---
Fuzzer filename: '/src/njs/external/njs_shell.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    njs_set_timer
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3837
      functionLinenumberEnd: 3895
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          261
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_mp_alloc
        - njs_rbtree_insert
        - njs_value_function
        - njs_value_is_function
        - njs_value_is_number
        - njs_value_number
        - njs_value_number_set
        - njs_vm_error2
        - njs_vm_external_ptr
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3843,15'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:3846,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:3850,9'
          Dst:             njs_value_is_function
        - Src:             'external/njs_shell.c:3851,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:3858,12'
          Dst:             njs_value_is_number
        - Src:             'external/njs_shell.c:3860,17'
          Dst:             njs_value_number
        - Src:             'external/njs_shell.c:3864,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:3871,23'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_shell.c:3871,10'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_shell.c:3874,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_shell.c:3878,26'
          Dst:             njs_value_function
        - Src:             'external/njs_shell.c:3888,5'
          Dst:             njs_rbtree_insert
        - Src:             'external/njs_shell.c:3892,5'
          Dst:             njs_value_number_set
    - functionName:    njs_console_time_end
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4024
      functionLinenumberEnd: 4058
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          131
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
        - njs_console_log
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:4035,13'
          Dst:             njs_console_log
        - Src:             'external/njs_shell.c:4042,13'
          Dst:             memcmp
        - Src:             'external/njs_shell.c:4055,5'
          Dst:             njs_console_log
        - Src:             'external/njs_shell.c:4057,5'
          Dst:             njs_mp_free
    - functionName:    njs_console_log
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3951
      functionLinenumberEnd: 3961
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_console_logger
        - njs_vsprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3957,9'
          Dst:             njs_vsprintf
        - Src:             'external/njs_shell.c:3960,5'
          Dst:             njs_console_logger
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    54
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_console_logger
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3966
      functionLinenumberEnd: 3980
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - njs_dprint
        - njs_dprintf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'external/njs_shell.c:3967,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_shell.c:3969,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3972,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3978,5'
          Dst:             njs_dprint
        - Src:             'external/njs_shell.c:3979,5'
          Dst:             njs_dprint
    - functionName:    njs_time
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4083
      functionLinenumberEnd: 4089
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:4087,5'
          Dst:             clock_gettime
    - functionName:    clock_gettime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_console_time
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3985
      functionLinenumberEnd: 4019
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          170
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
        - njs_console_log
        - njs_mp_alloc
        - njs_time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3996,13'
          Dst:             memcmp
        - Src:             'external/njs_shell.c:3997,13'
          Dst:             njs_console_log
        - Src:             'external/njs_shell.c:4005,13'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_shell.c:4014,19'
          Dst:             njs_time
    - functionName:    njs_ext_console_time_end
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3791
      functionLinenumberEnd: 3831
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          127
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_console_time_end
        - njs_time
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_to_string
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3800,10'
          Dst:             njs_time
        - Src:             'external/njs_shell.c:3802,15'
          Dst:             njs_vm_external
        - Src:             'external/njs_shell.c:3804,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:3812,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_shell.c:3813,14'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_shell.c:3814,19'
          Dst:             njs_value_to_string
        - Src:             'external/njs_shell.c:3819,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_shell.c:3823,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_shell.c:3826,5'
          Dst:             njs_console_time_end
        - Src:             'external/njs_shell.c:3828,5'
          Dst:             njs_value_undefined_set
    - functionName:    njs_ext_console_time
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3745
      functionLinenumberEnd: 3785
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          136
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_console_time
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_to_string
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3753,15'
          Dst:             njs_vm_external
        - Src:             'external/njs_shell.c:3755,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:3763,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_shell.c:3764,14'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_shell.c:3765,19'
          Dst:             njs_value_to_string
        - Src:             'external/njs_shell.c:3770,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_shell.c:3774,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_shell.c:3777,9'
          Dst:             njs_console_time
        - Src:             'external/njs_shell.c:3778,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:3782,5'
          Dst:             njs_value_undefined_set
    - functionName:    njs_ext_console_log
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3715
      functionLinenumberEnd: 3739
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_console_logger
        - njs_value_undefined_set
        - njs_vm_value_dump
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3724,13'
          Dst:             njs_vm_value_dump
        - Src:             'external/njs_shell.c:3731,9'
          Dst:             njs_console_logger
        - Src:             'external/njs_shell.c:3736,5'
          Dst:             njs_value_undefined_set
    - functionName:    njs_clear_timeout
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3917
      functionLinenumberEnd: 3946
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          116
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_free
        - njs_rbtree_delete
        - njs_rbtree_find
        - njs_value_is_number
        - njs_value_number
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_external_ptr
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3922,23'
          Dst:             njs_value_is_number
        - Src:             'external/njs_shell.c:3923,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_shell.c:3927,15'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:3929,20'
          Dst:             njs_value_number
        - Src:             'external/njs_shell.c:3931,10'
          Dst:             njs_rbtree_find
        - Src:             'external/njs_shell.c:3933,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:3939,5'
          Dst:             njs_rbtree_delete
        - Src:             'external/njs_shell.c:3941,17'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_shell.c:3941,5'
          Dst:             njs_mp_free
        - Src:             'external/njs_shell.c:3943,5'
          Dst:             njs_value_undefined_set
    - functionName:    njs_set_immediate
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3909
      functionLinenumberEnd: 3910
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_set_timer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3910,12'
          Dst:             njs_set_timer
    - functionName:    njs_set_timeout
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3901
      functionLinenumberEnd: 3902
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_set_timer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3902,12'
          Dst:             njs_set_timer
    - functionName:    njs_function_bind
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 920
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_value_function_set
        - njs_vm_bind
        - njs_vm_function_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:924,9'
          Dst:             njs_vm_function_alloc
        - Src:             'external/njs_shell.c:929,5'
          Dst:             njs_value_function_set
        - Src:             'external/njs_shell.c:931,12'
          Dst:             njs_vm_bind
    - functionName:    njs_read_file
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3281
      functionLinenumberEnd: 3373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          272
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - __errno_location
        - close
        - fstat
        - njs_dprintf
        - open
        - read
        - realloc
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3296,14'
          Dst:             open
        - Src:             'external/njs_shell.c:3298,13'
          Dst:             __errno_location
        - Src:             'external/njs_shell.c:3298,13'
          Dst:             strerror
        - Src:             'external/njs_shell.c:3298,13'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3304,9'
          Dst:             fstat
        - Src:             'external/njs_shell.c:3305,9'
          Dst:             __errno_location
        - Src:             'external/njs_shell.c:3305,9'
          Dst:             strerror
        - Src:             'external/njs_shell.c:3305,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3318,22'
          Dst:             realloc
        - Src:             'external/njs_shell.c:3320,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3329,13'
          Dst:             read
        - Src:             'external/njs_shell.c:3336,13'
          Dst:             __errno_location
        - Src:             'external/njs_shell.c:3336,13'
          Dst:             strerror
        - Src:             'external/njs_shell.c:3336,13'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3345,21'
          Dst:             realloc
        - Src:             'external/njs_shell.c:3347,17'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3369,16'
          Dst:             close
    - functionName:    open
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    57
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    close
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_object_completions
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1460
      functionLinenumberEnd: 1567
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          390
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - njs_arr_add
        - njs_arr_create
        - njs_arr_destroy
        - njs_mp_alloc
        - njs_sprintf
        - njs_value_is_null
        - njs_vm_array_length
        - njs_vm_array_start
        - njs_vm_memory_pool
        - njs_vm_prototype
        - njs_vm_value_enumerate
        - njs_vm_value_to_string
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1483,28'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_shell.c:1483,13'
          Dst:             njs_arr_create
        - Src:             'external/njs_shell.c:1488,13'
          Dst:             njs_value_is_null
        - Src:             'external/njs_shell.c:1489,16'
          Dst:             njs_vm_value_enumerate
        - Src:             'external/njs_shell.c:1496,16'
          Dst:             njs_vm_array_length
        - Src:             'external/njs_shell.c:1498,40'
          Dst:             njs_vm_array_start
        - Src:             'external/njs_shell.c:1505,19'
          Dst:             njs_vm_value_to_string
        - Src:             'external/njs_shell.c:1512,37'
          Dst:             strncmp
        - Src:             'external/njs_shell.c:1520,24'
          Dst:             strncmp
        - Src:             'external/njs_shell.c:1532,26'
          Dst:             njs_arr_add
        - Src:             'external/njs_shell.c:1538,46'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_shell.c:1538,33'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_shell.c:1545,13'
          Dst:             njs_sprintf
        - Src:             'external/njs_shell.c:1550,15'
          Dst:             njs_vm_prototype
        - Src:             'external/njs_shell.c:1563,9'
          Dst:             njs_arr_destroy
    - functionName:    strncmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_module_path
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1067
      functionLinenumberEnd: 1121
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          213
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - open
        - realpath
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1107,9'
          Dst:             realpath
        - Src:             'external/njs_shell.c:1112,16'
          Dst:             open
        - Src:             'external/njs_shell.c:1118,25'
          Dst:             strlen
    - functionName:    realpath
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    137
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_module_read
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1196
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          126
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - fstat
        - njs_mp_alloc
        - njs_mp_free
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1164,9'
          Dst:             fstat
        - Src:             'external/njs_shell.c:1174,19'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_shell.c:1179,9'
          Dst:             read
        - Src:             'external/njs_shell.c:1192,9'
          Dst:             njs_mp_free
    - functionName:    njs_module_lookup
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1153
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_module_path
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1133,16'
          Dst:             njs_module_path
        - Src:             'external/njs_shell.c:1136,11'
          Dst:             njs_module_path
        - Src:             'external/njs_shell.c:1145,15'
          Dst:             njs_module_path
    - functionName:    njs_file_dirname
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          144
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_module_loader
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          144
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - njs_console_set_cwd
        - njs_module_lookup
        - njs_module_read
        - njs_mp_free
        - njs_vm_compile_module
        - njs_vm_error2
        - njs_vm_external_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1272,15'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:1278,11'
          Dst:             njs_module_lookup
        - Src:             'external/njs_shell.c:1283,11'
          Dst:             njs_module_read
        - Src:             'external/njs_shell.c:1285,12'
          Dst:             close
        - Src:             'external/njs_shell.c:1288,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:1294,11'
          Dst:             njs_console_set_cwd
        - Src:             'external/njs_shell.c:1296,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:1303,14'
          Dst:             njs_vm_compile_module
        - Src:             'external/njs_shell.c:1306,5'
          Dst:             njs_mp_free
        - Src:             'external/njs_shell.c:1309,5'
          Dst:             njs_mp_free
    - functionName:    njs_console_set_cwd
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1257
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_file_dirname
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1246,5'
          Dst:             njs_file_dirname
        - Src:             'external/njs_shell.c:1248,26'
          Dst:             njs_mp_alloc
    - functionName:    njs_rejection_tracker
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1019
      functionLinenumberEnd: 1062
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          167
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_arr_add
        - njs_arr_create
        - njs_arr_remove
        - njs_value_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1031,23'
          Dst:             njs_value_ptr
        - Src:             'external/njs_shell.c:1034,17'
          Dst:             njs_value_ptr
        - Src:             'external/njs_shell.c:1037,17'
          Dst:             njs_arr_remove
        - Src:             'external/njs_shell.c:1048,38'
          Dst:             njs_arr_create
        - Src:             'external/njs_shell.c:1055,24'
          Dst:             njs_arr_add
    - functionName:    njs_engine_njs_complete
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1572
      functionLinenumberEnd: 1629
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          260
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - njs_atom_atomize_key
        - njs_object_completions
        - njs_value_property
        - njs_vm_global
        - njs_vm_value_string_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1585,12'
          Dst:             njs_vm_global
        - Src:             'external/njs_shell.c:1605,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_shell.c:1611,15'
          Dst:             njs_atom_atomize_key
        - Src:             'external/njs_shell.c:1611,15'
          Dst:             njs_value_property
        - Src:             'external/njs_shell.c:1628,12'
          Dst:             njs_object_completions
    - functionName:    njs_engine_njs_output
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1427
      functionLinenumberEnd: 1455
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_dprint
        - njs_dprintf
        - njs_vm_exception_string
        - njs_vm_external_ptr
        - njs_vm_value_dump
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1433,15'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:1437,17'
          Dst:             njs_vm_value_dump
        - Src:             'external/njs_shell.c:1441,17'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:1445,13'
          Dst:             njs_dprint
        - Src:             'external/njs_shell.c:1446,13'
          Dst:             njs_dprint
        - Src:             'external/njs_shell.c:1450,9'
          Dst:             njs_vm_exception_string
        - Src:             'external/njs_shell.c:1451,9'
          Dst:             njs_dprintf
    - functionName:    njs_engine_njs_destroy
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1379
      functionLinenumberEnd: 1394
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_destroy
        - njs_vm_call_exit_hook
        - njs_vm_destroy
        - njs_vm_execute_pending_job
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1382,12'
          Dst:             njs_vm_call_exit_hook
        - Src:             'external/njs_shell.c:1385,15'
          Dst:             njs_vm_execute_pending_job
        - Src:             'external/njs_shell.c:1391,5'
          Dst:             njs_vm_destroy
        - Src:             'external/njs_shell.c:1392,5'
          Dst:             njs_mp_destroy
    - functionName:    njs_engine_njs_process_events
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1634
      functionLinenumberEnd: 1675
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          142
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - njs_engine_njs_output
        - njs_rbtree_delete
        - njs_vm_external_ptr
        - njs_vm_invoke
        - njs_vm_pending
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1644,15'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:1657,9'
          Dst:             njs_rbtree_delete
        - Src:             'external/njs_shell.c:1659,15'
          Dst:             njs_vm_invoke
        - Src:             'external/njs_shell.c:1662,13'
          Dst:             njs_engine_njs_output
        - Src:             'external/njs_shell.c:1674,12'
          Dst:             njs_vm_pending
    - functionName:    njs_engine_njs_unhandled_rejection
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1680
      functionLinenumberEnd: 1710
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_arr_destroy
        - njs_vm_error2
        - njs_vm_external_ptr
        - njs_vm_value_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1688,15'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:1698,11'
          Dst:             njs_vm_value_to_string
        - Src:             'external/njs_shell.c:1704,5'
          Dst:             njs_vm_error2
        - Src:             'external/njs_shell.c:1706,5'
          Dst:             njs_arr_destroy
    - functionName:    njs_engine_njs_execute_pending_job
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1420
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vm_execute_pending_job
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1421,12'
          Dst:             njs_vm_execute_pending_job
    - functionName:    njs_engine_njs_eval
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1415
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_vm_compile
        - njs_vm_start
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1407,12'
          Dst:             njs_vm_compile
        - Src:             'external/njs_shell.c:1410,16'
          Dst:             njs_vm_start
    - functionName:    njs_engine_njs_init
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1374
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          172
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_console_set_cwd
        - njs_dprintf
        - njs_module_loader
        - njs_rejection_tracker
        - njs_vm_create
        - njs_vm_external_ptr
        - njs_vm_opt_init
        - njs_vm_set_module_loader
        - njs_vm_set_rejection_tracker
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:1322,5'
          Dst:             njs_vm_opt_init
        - Src:             'external/njs_shell.c:1325,30'
          Dst:             strlen
        - Src:             'external/njs_shell.c:1352,10'
          Dst:             njs_vm_create
        - Src:             'external/njs_shell.c:1354,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:1360,38'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:1359,9'
          Dst:             njs_vm_set_rejection_tracker
        - Src:             'external/njs_shell.c:1359,9'
          Dst:             njs_rejection_tracker
        - Src:             'external/njs_shell.c:1363,31'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:1363,11'
          Dst:             njs_console_set_cwd
        - Src:             'external/njs_shell.c:1365,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:1369,5'
          Dst:             njs_vm_set_module_loader
        - Src:             'external/njs_shell.c:1369,5'
          Dst:             njs_module_loader
    - functionName:    njs_externals_init
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 1013
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          197
      EdgeCount:       37
      CyclomaticComplexity: 13
      functionsReached:
        - njs_clear_timeout
        - njs_dprintf
        - njs_function_bind
        - njs_set_immediate
        - njs_set_timeout
        - njs_vm_bind
        - njs_vm_external_create
        - njs_vm_external_prototype
        - njs_vm_external_ptr
        - njs_vm_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:950,15'
          Dst:             njs_vm_external_ptr
        - Src:             'external/njs_shell.c:952,28'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_shell.c:955,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:959,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_shell.c:965,11'
          Dst:             njs_vm_bind
        - Src:             'external/njs_shell.c:970,11'
          Dst:             njs_vm_value
        - Src:             'external/njs_shell.c:975,11'
          Dst:             njs_vm_bind
        - Src:             'external/njs_shell.c:980,11'
          Dst:             njs_function_bind
        - Src:             'external/njs_shell.c:980,11'
          Dst:             njs_set_timeout
        - Src:             'external/njs_shell.c:985,11'
          Dst:             njs_function_bind
        - Src:             'external/njs_shell.c:985,11'
          Dst:             njs_set_immediate
        - Src:             'external/njs_shell.c:990,11'
          Dst:             njs_function_bind
        - Src:             'external/njs_shell.c:990,11'
          Dst:             njs_clear_timeout
        - Src:             'external/njs_shell.c:995,16'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_shell.c:998,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:1002,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_shell.c:1007,11'
          Dst:             njs_vm_bind
    - functionName:    njs_event_rbtree_compare
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4063
      functionLinenumberEnd: 4078
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_process_file
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3378
      functionLinenumberEnd: 3432
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          189
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - memcmp
        - njs_create_engine
        - njs_process_script
        - njs_read_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:3387,11'
          Dst:             njs_read_file
        - Src:             'external/njs_shell.c:3396,30'
          Dst:             memcmp
        - Src:             'external/njs_shell.c:3408,14'
          Dst:             njs_create_engine
        - Src:             'external/njs_shell.c:3414,11'
          Dst:             njs_process_script
    - functionName:    njs_create_engine
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3214
      functionLinenumberEnd: 3276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          117
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - getpagesize
        - njs_dprintf
        - njs_engine_njs_init
        - njs_mp_fast_create
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'external/njs_shell.c:3233,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_shell.c:3219,33'
          Dst:             getpagesize
        - Src:             'external/njs_shell.c:3219,10'
          Dst:             njs_mp_fast_create
        - Src:             'external/njs_shell.c:3224,14'
          Dst:             njs_mp_zalloc
        - Src:             'external/njs_shell.c:3235,15'
          Dst:             njs_engine_njs_init
        - Src:             'external/njs_shell.c:3237,13'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:3271,9'
          Dst:             njs_dprintf
    - functionName:    njs_process_script
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3439
      functionLinenumberEnd: 3491
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          221
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getpagesize
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_console_init
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 913
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - njs_event_rbtree_compare
        - njs_rbtree_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:891,5'
          Dst:             njs_rbtree_init
        - Src:             'external/njs_shell.c:891,5'
          Dst:             njs_event_rbtree_compare
    - functionName:    njs_main
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          120
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_console_init
        - njs_create_engine
        - njs_dprintf
        - njs_process_file
        - njs_process_script
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:428,13'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:433,11'
          Dst:             njs_console_init
        - Src:             'external/njs_shell.c:435,9'
          Dst:             njs_dprintf
        - Src:             'external/njs_shell.c:449,18'
          Dst:             njs_create_engine
        - Src:             'external/njs_shell.c:454,15'
          Dst:             njs_process_script
        - Src:             'external/njs_shell.c:458,15'
          Dst:             njs_process_file
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/njs/external/njs_shell.c'
      linkageType:     externalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          69
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_main
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_shell.c:877,12'
          Dst:             njs_main
    - functionName:    njs_arr_remove
      functionSourceFile: '/src/njs/src/njs_arr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          64
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_arr_zero_add
      functionSourceFile: '/src/njs/src/njs_arr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_arr_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_arr.c:137,12'
          Dst:             njs_arr_add
    - functionName:    njs_arr_add
      functionSourceFile: '/src/njs/src/njs_arr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_arr_add_multiple
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_arr.c:77,12'
          Dst:             njs_arr_add_multiple
    - functionName:    njs_arr_add_multiple
      functionSourceFile: '/src/njs/src/njs_arr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          168
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_arr.c:105,17'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_arr.c:120,13'
          Dst:             njs_mp_free
    - functionName:    njs_arr_destroy
      functionSourceFile: '/src/njs/src/njs_arr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_arr.c:60,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_arr.c:69,9'
          Dst:             njs_mp_free
    - functionName:    njs_arr_init
      functionSourceFile: '/src/njs/src/njs_arr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_arr.c:49,22'
          Dst:             njs_mp_alloc
    - functionName:    njs_arr_create
      functionSourceFile: '/src/njs/src/njs_arr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          73
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_arr.c:16,11'
          Dst:             njs_mp_alloc
    - functionName:    njs_rbtree_destroy_next
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_rbtree_delete_fixup
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          588
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_rbtree_delete
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          220
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - njs_rbtree_delete_fixup
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_rbtree.c:335,9'
          Dst:             njs_rbtree_delete_fixup
    - functionName:    njs_rbtree_find_greater_or_equal
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_rbtree_find_less_or_equal
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_rbtree_find
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_rbtree_insert_fixup
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          375
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_rbtree_insert
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          111
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_rbtree_insert_fixup
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_rbtree.c:90,5'
          Dst:             njs_rbtree_insert_fixup
    - functionName:    njs_rbtree_init
      functionSourceFile: '/src/njs/src/njs_rbtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_mp_alloc_cluster
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          240
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - njs_memalign
        - njs_rbtree_insert
        - njs_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:547,15'
          Dst:             njs_zalloc
        - Src:             'src/njs_mp.c:557,22'
          Dst:             njs_memalign
        - Src:             'src/njs_mp.c:574,5'
          Dst:             njs_rbtree_insert
    - functionName:    njs_mp_alloc_page
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_alloc_cluster
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:524,19'
          Dst:             njs_mp_alloc_cluster
    - functionName:    njs_mp_alloc_chunk
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_mp_chunk_free
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          444
      EdgeCount:       54
      CyclomaticComplexity: 13
      functionsReached:
        - njs_rbtree_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:848,5'
          Dst:             njs_rbtree_delete
    - functionName:    njs_mp_find_block
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 747
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_mp_free
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          101
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_chunk_free
        - njs_mp_find_block
        - njs_rbtree_delete
      functionUses:    300
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:690,13'
          Dst:             njs_mp_find_block
        - Src:             'src/njs_mp.c:695,19'
          Dst:             njs_mp_chunk_free
        - Src:             'src/njs_mp.c:702,13'
          Dst:             njs_rbtree_delete
    - functionName:    njs_mp_cleanup_add
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 679
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:656,9'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_mp.c:662,19'
          Dst:             njs_mp_alloc
    - functionName:    njs_mp_alloc
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc_large
        - njs_mp_alloc_small
      functionUses:    425
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:320,16'
          Dst:             njs_mp_alloc_small
        - Src:             'src/njs_mp.c:325,12'
          Dst:             njs_mp_alloc_large
    - functionName:    njs_mp_alloc_small
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          346
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - njs_mp_alloc_chunk
        - njs_mp_alloc_page
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:425,18'
          Dst:             njs_mp_alloc_chunk
        - Src:             'src/njs_mp.c:438,20'
          Dst:             njs_mp_alloc_page
        - Src:             'src/njs_mp.c:459,16'
          Dst:             njs_mp_alloc_page
    - functionName:    njs_mp_alloc_large
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          134
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - njs_memalign
        - njs_rbtree_insert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:609,13'
          Dst:             njs_memalign
        - Src:             'src/njs_mp.c:620,13'
          Dst:             njs_memalign
        - Src:             'src/njs_mp.c:633,5'
          Dst:             njs_rbtree_insert
    - functionName:    njs_mp_zalign
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_align
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:377,9'
          Dst:             njs_mp_align
    - functionName:    njs_mp_align
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          102
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_alloc_large
        - njs_mp_alloc_small
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:359,24'
          Dst:             njs_mp_alloc_small
        - Src:             'src/njs_mp.c:365,16'
          Dst:             njs_mp_alloc_large
    - functionName:    njs_mp_zalloc
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    150
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:334,9'
          Dst:             njs_mp_alloc
    - functionName:    njs_mp_stat
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          147
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_mp_destroy
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          105
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - njs_rbtree_destroy_next
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:272,16'
          Dst:             njs_rbtree_destroy_next
    - functionName:    njs_mp_is_empty
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_mp_rbtree_compare
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_mp_shift
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          30
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_mp_fast_create
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          181
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_rbtree_compare
        - njs_mp_shift
        - njs_rbtree_init
        - njs_zalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:194,10'
          Dst:             njs_zalloc
        - Src:             'src/njs_mp.c:214,32'
          Dst:             njs_mp_shift
        - Src:             'src/njs_mp.c:215,31'
          Dst:             njs_mp_shift
        - Src:             'src/njs_mp.c:217,9'
          Dst:             njs_rbtree_init
        - Src:             'src/njs_mp.c:217,9'
          Dst:             njs_mp_rbtree_compare
    - functionName:    njs_mp_create
      functionSourceFile: '/src/njs/src/njs_mp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          165
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - njs_mp_fast_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_mp.c:173,12'
          Dst:             njs_mp_fast_create
    - functionName:    njs_dprintf
      functionSourceFile: '/src/njs/src/njs_sprintf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vsprintf
        - write
      functionUses:    46
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_sprintf.c:607,9'
          Dst:             njs_vsprintf
        - Src:             'src/njs_sprintf.c:612,12'
          Dst:             write
    - functionName:    njs_vsprintf
      functionSourceFile: '/src/njs/src/njs_sprintf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         212
      ICount:          1411
      EdgeCount:       269
      CyclomaticComplexity: 59
      functionsReached:
        - njs_float
        - njs_integer
        - njs_sprintf
      functionUses:    9
      BranchProfiles:
        - Branch String:   'src/njs_sprintf.c:121,9'
          Branch Sides:    []
        - Branch String:   'src/njs_sprintf.c:184,13'
          Branch Sides:    []
        - Branch String:   'src/njs_sprintf.c:226,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_sprintf.c:337,19'
          Dst:             njs_float
        - Src:             'src/njs_sprintf.c:347,27'
          Dst:             njs_integer
        - Src:             'src/njs_sprintf.c:377,19'
          Dst:             njs_sprintf
        - Src:             'src/njs_sprintf.c:420,15'
          Dst:             njs_integer
    - functionName:    write
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_float
      functionSourceFile: '/src/njs/src/njs_sprintf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          165
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - fmod
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_sprintf.c:561,28'
          Dst:             fmod
    - functionName:    njs_integer
      functionSourceFile: '/src/njs/src/njs_sprintf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          187
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_sprintf
      functionSourceFile: '/src/njs/src/njs_sprintf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vsprintf
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_sprintf.c:53,9'
          Dst:             njs_vsprintf
    - functionName:    fmod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_dprint
      functionSourceFile: '/src/njs/src/njs_sprintf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - write
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_sprintf.c:595,12'
          Dst:             write
    - functionName:    njs_typed_array_property_query
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 916
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          344
      EdgeCount:       41
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value.c:920,9'
          Dst:             njs_throw_error
    - functionName:    njs_array_property_query
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          425
      EdgeCount:       65
      CyclomaticComplexity: 20
      functionsReached:
        - njs_array_convert_to_slow_array
        - njs_array_expand
        - njs_array_length_redefine
        - njs_flathsh_unique_find
        - njs_object_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:818,27'
          Dst:             njs_array_expand
        - Src:             'src/njs_value.c:838,19'
          Dst:             njs_array_convert_to_slow_array
        - Src:             'src/njs_value.c:846,15'
          Dst:             njs_object_length
        - Src:             'src/njs_value.c:852,19'
          Dst:             njs_array_length_redefine
        - Src:             'src/njs_value.c:860,15'
          Dst:             njs_flathsh_unique_find
    - functionName:    njs_value_method
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1733
      functionLinenumberEnd: 1752
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_throw_error
        - njs_value_property
        - njs_value_to_object
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:1736,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_value.c:1741,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value.c:1747,9'
          Dst:             njs_throw_error
    - functionName:    njs_value_to_object
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1621
      functionLinenumberEnd: 1650
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          117
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_object_value_alloc
        - njs_throw_error
        - njs_type_string
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:1626,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:1636,18'
          Dst:             njs_object_value_alloc
        - Src:             'src/njs_value.c:1646,5'
          Dst:             njs_type_string
        - Src:             'src/njs_value.c:1646,5'
          Dst:             njs_throw_error
    - functionName:    njs_value_property
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1051
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          689
      EdgeCount:       103
      CyclomaticComplexity: 17
      functionsReached:
        - njs_function_call2
        - njs_prop_type_string
        - njs_property_query
        - njs_throw_error
      functionUses:    130
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
        - Branch String:   'src/njs_value.c:1105,5'
          Branch Sides:    []
        - Branch String:   'src/njs_value.c:1110,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value.c:1103,11'
          Dst:             njs_property_query
        - Src:             'src/njs_value.c:1123,20'
          Dst:             njs_function_call2
        - Src:             'src/njs_value.c:1145,13'
          Dst:             njs_prop_type_string
        - Src:             'src/njs_value.c:1145,13'
          Dst:             njs_throw_error
    - functionName:    njs_property_query
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         148
      ICount:          1182
      EdgeCount:       191
      CyclomaticComplexity: 45
      functionsReached:
        - njs_array_property_query
        - njs_dtoa2
        - njs_external_property_query
        - njs_flathsh_unique_find
        - njs_key_to_index
        - njs_prop_private_copy
        - njs_string_new
        - njs_string_property_query
        - njs_symbol_descriptive_string
        - njs_throw_error
        - njs_type_string
        - njs_typed_array_property_query
        - njs_value_to_string
      functionUses:    13
      BranchProfiles:
        - Branch String:   'src/njs_value.c:620,5'
          Branch Sides:    []
        - Branch String:   'src/njs_value.c:691,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value.c:630,20'
          Dst:             njs_string_property_query
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:654,9'
          Dst:             njs_type_string
        - Src:             'src/njs_value.c:654,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_array_property_query
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:703,19'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_key_to_index
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_array_property_query
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_typed_array_property_query
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:726,19'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_key_to_index
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_string_property_query
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_value.c:659,11'
          Dst:             njs_prop_private_copy
        - Src:             'src/njs_value.c:662,16'
          Dst:             njs_external_property_query
    - functionName:    njs_string_property_query
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          84
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_string_prop
        - njs_string_slice
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:963,27'
          Dst:             njs_string_prop
        - Src:             'src/njs_value.c:970,16'
          Dst:             njs_string_slice
    - functionName:    njs_type_string
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          97
      EdgeCount:       38
      CyclomaticComplexity: 20
      functionsReached: []
      functionUses:    56
      BranchProfiles:
        - Branch String:   'src/njs_value.c:321,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    njs_external_property_query
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 1045
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          184
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_value.c:1020,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    njs_value_species_constructor
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1684
      functionLinenumberEnd: 1727
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          118
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_throw_error
        - njs_value_is_null_or_undefined
        - njs_value_property
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:1688,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value.c:1699,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:1703,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value.c:1709,9'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'src/njs_value.c:1714,9'
          Dst:             njs_throw_error
    - functionName:    njs_value_is_null_or_undefined
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_construct
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1665
      functionLinenumberEnd: 1678
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_function_call2
        - njs_function_new_object
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:1669,14'
          Dst:             njs_function_new_object
        - Src:             'src/njs_value.c:1676,12'
          Dst:             njs_function_call2
    - functionName:    njs_value_to_integer
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1604
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          185
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
      functionUses:    84
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:1608,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value.c:1608,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value.c:1608,11'
          Dst:             njs_string_to_number
    - functionName:    njs_value_to_primitive
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          393
      EdgeCount:       60
      CyclomaticComplexity: 18
      functionsReached:
        - njs_dtoa2
        - njs_function_call2
        - njs_object_property
        - njs_string_new
        - njs_throw_error
      functionUses:    102
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:75,11'
          Dst:             njs_object_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:83,9'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:85,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_value.c:112,19'
          Dst:             njs_object_property
        - Src:             'src/njs_value.c:118,23'
          Dst:             njs_function_call2
        - Src:             'src/njs_value.c:135,9'
          Dst:             njs_throw_error
    - functionName:    njs_symbol_conversion_failed
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1655
      functionLinenumberEnd: 1659
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error
      functionUses:    78
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:1656,5'
          Dst:             njs_throw_error
    - functionName:    njs_primitive_value_to_chain
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1561
      functionLinenumberEnd: 1599
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          102
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - njs_chb_append0
        - njs_number_to_chain
        - njs_string_prop
        - njs_symbol_conversion_failed
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_value.c:1564,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value.c:1567,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_value.c:1571,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_value.c:1576,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_value.c:1580,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_value.c:1585,16'
          Dst:             njs_number_to_chain
        - Src:             'src/njs_value.c:1588,9'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value.c:1592,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_value.c:1593,9'
          Dst:             njs_chb_append0
    - functionName:    njs_primitive_value_to_string
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1514
      functionLinenumberEnd: 1555
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          494
      EdgeCount:       59
      CyclomaticComplexity: 14
      functionsReached:
        - njs_dtoa2
        - njs_number_to_string
        - njs_string_new
        - njs_symbol_conversion_failed
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_value.c:1517,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:1520,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:1524,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:1529,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:1532,13'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:1538,16'
          Dst:             njs_number_to_string
        - Src:             'src/njs_value.c:1541,9'
          Dst:             njs_symbol_conversion_failed
    - functionName:    njs_value_property_delete
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1407
      functionLinenumberEnd: 1508
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         85
      ICount:          751
      EdgeCount:       112
      CyclomaticComplexity: 29
      functionsReached:
        - njs_dtoa2
        - njs_function_call2
        - njs_prop_type_string
        - njs_property_query
        - njs_string_new
        - njs_symbol_descriptive_string
        - njs_throw_error
        - njs_type_string
        - njs_value_to_string
      functionUses:    23
      BranchProfiles:
        - Branch String:   'src/njs_value.c:1454,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value.c:1436,11'
          Dst:             njs_property_query
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:1446,13'
          Dst:             njs_type_string
        - Src:             'src/njs_value.c:1446,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:1479,16'
          Dst:             njs_function_call2
        - Src:             'src/njs_value.c:1491,9'
          Dst:             njs_prop_type_string
        - Src:             'src/njs_value.c:1491,9'
          Dst:             njs_throw_error
    - functionName:    njs_value_property_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1401
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         219
      ICount:          2029
      EdgeCount:       289
      CyclomaticComplexity: 72
      functionsReached:
        - njs_array_length_set
        - njs_dtoa2
        - njs_flathsh_add_elt
        - njs_flathsh_new
        - njs_flathsh_unique_delete
        - njs_flathsh_unique_insert
        - njs_function_call2
        - njs_prop_type_string
        - njs_property_query
        - njs_string_new
        - njs_string_to_index
        - njs_symbol_descriptive_string
        - njs_throw_error
        - njs_type_string
        - njs_typed_array_set_value
        - njs_value_to_string
      functionUses:    80
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_value.c:1228,5'
          Branch Sides:    []
        - Branch String:   'src/njs_value.c:1264,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value.c:1191,24'
          Dst:             njs_typed_array_set_value
        - Src:             'src/njs_value.c:1219,9'
          Dst:             njs_type_string
        - Src:             'src/njs_value.c:1219,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:1226,11'
          Dst:             njs_property_query
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:1236,17'
          Dst:             njs_type_string
        - Src:             'src/njs_value.c:1236,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:1244,24'
          Dst:             njs_function_call2
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:1249,13'
          Dst:             njs_type_string
        - Src:             'src/njs_value.c:1249,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:1268,32'
          Dst:             njs_array_length_set
        - Src:             'src/njs_value.c:1280,24'
          Dst:             njs_typed_array_set_value
        - Src:             'src/njs_value.c:1286,17'
          Dst:             njs_prop_type_string
        - Src:             'src/njs_value.c:1286,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:1314,22'
          Dst:             njs_flathsh_unique_delete
        - Src:             'src/njs_value.c:1322,21'
          Dst:             njs_flathsh_new
        - Src:             'src/njs_value.c:1330,19'
          Dst:             njs_flathsh_add_elt
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_value.c:1349,19'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:1354,18'
          Dst:             njs_string_to_index
        - Src:             'src/njs_value.c:1376,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_value.c:1378,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_value.c:1397,5'
          Dst:             njs_throw_error
    - functionName:    njs_value_is_promise
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_data_view
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_buffer
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 574
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_function
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_array
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_external
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_error
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_object
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_string
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    54
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_valid_number
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_number
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_boolean
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_valid
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_undefined
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    32
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_is_null
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_external
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 472
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_ptr
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_native_function
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_function
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_number
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_bool
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_external_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_function_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_number_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          42
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    27
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_boolean_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_invalid_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_null_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_undefined_set
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    36
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_length
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - njs_object_length
        - njs_string_prop
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:302,19'
          Dst:             njs_string_prop
        - Src:             'src/njs_value.c:311,16'
          Dst:             njs_object_length
    - functionName:    njs_value_of
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          100
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_function_call2
        - njs_throw_error
        - njs_value_property
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:282,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value.c:288,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.c:292,12'
          Dst:             njs_function_call2
    - functionName:    njs_value_own_enumerate
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          413
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_object_own_enumerate
        - njs_value_property
      functionUses:    15
      BranchProfiles:
        - Branch String:   'src/njs_value.c:203,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value.c:195,20'
          Dst:             njs_object_own_enumerate
        - Src:             'src/njs_value.c:212,22'
          Dst:             njs_array_alloc
        - Src:             'src/njs_value.c:220,23'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.c:220,23'
          Dst:             njs_value_property
        - Src:             'src/njs_value.c:234,22'
          Dst:             njs_array_alloc
        - Src:             'src/njs_value.c:242,25'
          Dst:             njs_array_alloc
        - Src:             'src/njs_value.c:247,23'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.c:247,23'
          Dst:             njs_value_property
        - Src:             'src/njs_value.c:262,16'
          Dst:             njs_array_alloc
        - Src:             'src/njs_value.c:268,12'
          Dst:             njs_object_own_enumerate
    - functionName:    njs_value_enumerate
      functionSourceFile: '/src/njs/src/njs_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          137
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - njs_array_alloc
        - njs_object_enumerate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.c:169,16'
          Dst:             njs_object_enumerate
        - Src:             'src/njs_value.c:173,16'
          Dst:             njs_array_alloc
        - Src:             'src/njs_value.c:179,12'
          Dst:             njs_object_enumerate
    - functionName:    njs_atom_atomize_key
      functionSourceFile: '/src/njs/src/njs_atom.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          284
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - njs_atom_add
        - njs_atom_find
        - njs_djb_hash
        - njs_key_to_index
        - njs_number_to_string
      functionUses:    117
      BranchProfiles:
        - Branch String:   'src/njs_atom.c:235,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_atom.c:237,15'
          Dst:             njs_key_to_index
        - Src:             'src/njs_atom.c:246,23'
          Dst:             njs_djb_hash
        - Src:             'src/njs_atom.c:249,21'
          Dst:             njs_atom_find
        - Src:             'src/njs_atom.c:252,25'
          Dst:             njs_atom_add
        - Src:             'src/njs_atom.c:271,19'
          Dst:             njs_number_to_string
        - Src:             'src/njs_atom.c:277,27'
          Dst:             njs_djb_hash
        - Src:             'src/njs_atom.c:280,25'
          Dst:             njs_atom_find
        - Src:             'src/njs_atom.c:284,29'
          Dst:             njs_atom_add
    - functionName:    njs_atom_find
      functionSourceFile: '/src/njs/src/njs_atom.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          77
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_flathsh_find
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.c:82,11'
          Dst:             njs_flathsh_find
        - Src:             'src/njs_atom.c:87,11'
          Dst:             njs_flathsh_find
    - functionName:    njs_atom_add
      functionSourceFile: '/src/njs/src/njs_atom.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          112
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_flathsh_insert
        - njs_throw_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.c:112,11'
          Dst:             njs_flathsh_insert
        - Src:             'src/njs_atom.c:123,9'
          Dst:             njs_throw_error
    - functionName:    njs_lexer_hash_test
      functionSourceFile: '/src/njs/src/njs_atom.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.c:62,9'
          Dst:             memcmp
    - functionName:    njs_atom_hash_init
      functionSourceFile: '/src/njs/src/njs_atom.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          171
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - njs_djb_hash
        - njs_flathsh_insert
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.c:192,19'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_atom.c:195,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.c:204,28'
          Dst:             njs_djb_hash
        - Src:             'src/njs_atom.c:208,19'
          Dst:             njs_flathsh_insert
        - Src:             'src/njs_atom.c:210,17'
          Dst:             njs_throw_error
    - functionName:    njs_atom_symbol_add
      functionSourceFile: '/src/njs/src/njs_atom.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          92
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.c:149,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_atom.c:151,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.c:158,9'
          Dst:             njs_throw_error
    - functionName:    njs_flathsh_proto_free
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1636
      functionLinenumberEnd: 1638
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1637,5'
          Dst:             njs_mp_free
    - functionName:    njs_flathsh_proto_alloc
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1629
      functionLinenumberEnd: 1630
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_align
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1630,12'
          Dst:             njs_mp_align
    - functionName:    njs_vm_string_compare
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1622
      functionLinenumberEnd: 1623
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_string_cmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1623,12'
          Dst:             njs_string_cmp
    - functionName:    njs_vm_value_to_bytes
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1559
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          180
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - njs_throw_error
        - njs_value_to_string
      functionUses:    24
      BranchProfiles:
        - Branch String:   'src/njs_vm.c:1573,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_vm.c:1597,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:1606,15'
          Dst:             njs_value_to_string
    - functionName:    njs_value_to_string
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1533
      functionLinenumberEnd: 1554
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          106
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_primitive_value_to_string
        - njs_value_to_primitive
      functionUses:    117
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1543,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vm.c:1553,12'
          Dst:             njs_primitive_value_to_string
    - functionName:    njs_vm_value_to_c_string
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1524
      functionLinenumberEnd: 1527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_date_alloc
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1470
      functionLinenumberEnd: 1481
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_date_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1473,12'
          Dst:             njs_date_alloc
    - functionName:    njs_vm_array_length
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1459
      functionLinenumberEnd: 1464
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_object_length
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1464,12'
          Dst:             njs_object_length
    - functionName:    njs_vm_array_start
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1447
      functionLinenumberEnd: 1454
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1449,9'
          Dst:             njs_throw_error
    - functionName:    njs_vm_object_iterate
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1440
      functionLinenumberEnd: 1441
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_iterate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1441,12'
          Dst:             njs_object_iterate
    - functionName:    njs_vm_array_prop
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1409
      functionLinenumberEnd: 1434
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          246
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - njs_atom_atomize_key
        - njs_throw_error
        - njs_value_property
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1414,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:1428,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
    - functionName:    njs_vm_object_prop_set
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1382
      functionLinenumberEnd: 1403
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          125
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_atom_atomize_key
        - njs_string_create
        - njs_throw_error
        - njs_value_property_set
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1387,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:1391,11'
          Dst:             njs_string_create
        - Src:             'src/njs_vm.c:1391,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vm.c:1396,11'
          Dst:             njs_value_property_set
    - functionName:    njs_vm_object_prop
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1356
      functionLinenumberEnd: 1376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          134
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_atom_atomize_key
        - njs_throw_error
        - njs_value_property
        - njs_vm_value_string_create
      functionUses:    73
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1361,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:1365,11'
          Dst:             njs_vm_value_string_create
        - Src:             'src/njs_vm.c:1370,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vm.c:1370,11'
          Dst:             njs_value_property
    - functionName:    njs_vm_value_string_create
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1019
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_string_create
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1020,12'
          Dst:             njs_string_create
    - functionName:    njs_vm_array_push
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1343
      functionLinenumberEnd: 1350
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_array_expand
        - njs_throw_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1345,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:1349,12'
          Dst:             njs_array_expand
    - functionName:    njs_vm_array_alloc
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1326
      functionLinenumberEnd: 1338
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_array_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1329,13'
          Dst:             njs_array_alloc
    - functionName:    njs_vm_prototype
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1320
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_get_prototype_of
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1319,12'
          Dst:             njs_object_get_prototype_of
    - functionName:    njs_vm_object_keys
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_value_own_enumerate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1299,12'
          Dst:             njs_value_own_enumerate
    - functionName:    njs_vm_object_alloc
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1291
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          240
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - njs_atom_atomize_key
        - njs_flathsh_unique_insert
        - njs_object_alloc
        - njs_throw_error
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1229,14'
          Dst:             njs_object_alloc
        - Src:             'src/njs_vm.c:1246,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:1251,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:1256,19'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vm.c:1267,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_vm.c:1269,13'
          Dst:             njs_throw_error
    - functionName:    njs_vm_value_own_enumerate
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_value_own_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1208,12'
          Dst:             njs_value_own_enumerate
    - functionName:    njs_vm_value_enumerate
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1199
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          610
      EdgeCount:       102
      CyclomaticComplexity: 29
      functionsReached:
        - njs_array_expand
        - njs_dtoa2
        - njs_string_eq
        - njs_string_new
        - njs_value_enumerate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1160,12'
          Dst:             njs_value_enumerate
        - Src:             'src/njs_value.h:1157,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_vm.c:1184,15'
          Dst:             njs_array_expand
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vm.c:1189,9'
          Dst:             njs_string_new
    - functionName:    njs_vm_exception_string
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1141
      functionLinenumberEnd: 1146
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vm_exception
        - njs_vm_value_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1144,17'
          Dst:             njs_vm_exception
        - Src:             'src/njs_vm.c:1146,12'
          Dst:             njs_vm_value_string
    - functionName:    njs_vm_exception
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_value_string
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1091
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          168
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_vm_exception
        - njs_vm_runtime_init
        - njs_vm_value_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1098,9'
          Dst:             njs_vm_runtime_init
        - Src:             'src/njs_vm.c:1102,17'
          Dst:             njs_vm_exception
        - Src:             'src/njs_vm.c:1118,11'
          Dst:             njs_vm_value_to_string
        - Src:             'src/njs_vm.c:1128,16'
          Dst:             njs_vm_exception
    - functionName:    njs_vm_runtime_init
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          112
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_function_frame_alloc
        - njs_memory_error
        - njs_rbtree_init
        - njs_regexp_init
        - njs_symbol_rbtree_cmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:483,33'
          Dst:             njs_function_frame_alloc
        - Src:             'src/njs_vm.c:485,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_vm.c:496,11'
          Dst:             njs_regexp_init
        - Src:             'src/njs_vm.c:505,5'
          Dst:             njs_rbtree_init
        - Src:             'src/njs_vm.c:505,5'
          Dst:             njs_symbol_rbtree_cmp
    - functionName:    njs_vm_value_to_string
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1486
      functionLinenumberEnd: 1519
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          359
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - njs_dtoa2
        - njs_error_stack
        - njs_string_new
        - njs_value_to_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1500,15'
          Dst:             njs_error_stack
        - Src:             'src/njs_vm.c:1512,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vm.c:1515,9'
          Dst:             njs_string_new
    - functionName:    njs_vm_memory_error
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1084
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_memory_error_set
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1085,5'
          Dst:             njs_memory_error_set
    - functionName:    njs_vm_prop_name
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1079
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          316
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vm.c:1067,11'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vm.c:1076,5'
          Dst:             njs_string_new
    - functionName:    njs_vm_prop_magic32
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1057
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_prop_magic16
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_function
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_vm_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1038,11'
          Dst:             njs_vm_value
    - functionName:    njs_vm_value
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          207
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - njs_atom_atomize_key
        - njs_string_create
        - njs_throw_error
        - njs_value_property
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:877,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:881,15'
          Dst:             njs_string_create
        - Src:             'src/njs_vm.c:881,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vm.c:886,15'
          Dst:             njs_value_property
    - functionName:    njs_vm_value_string_create_chb
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1028
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_string_create_chb
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1028,12'
          Dst:             njs_string_create_chb
    - functionName:    njs_vm_value_buffer_set
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1011
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_buffer_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:1012,12'
          Dst:             njs_buffer_set
    - functionName:    njs_vm_value_array_buffer_set
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 991
      functionLinenumberEnd: 1005
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_array_buffer_alloc
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:994,13'
          Dst:             njs_array_buffer_alloc
    - functionName:    njs_value_string_get
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 983
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          183
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    46
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vm.c:984,5'
          Dst:             njs_string_new
    - functionName:    njs_vm_bind_handler
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 965
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_prop_init
        - njs_vm_bind2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:968,5'
          Dst:             njs_object_prop_init
        - Src:             'src/njs_vm.c:977,12'
          Dst:             njs_vm_bind2
    - functionName:    njs_vm_bind2
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 944
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          194
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_atom_atomize_key
        - njs_flathsh_unique_insert
        - njs_string_create
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:915,11'
          Dst:             njs_string_create
        - Src:             'src/njs_vm.c:915,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vm.c:929,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_vm.c:931,9'
          Dst:             njs_throw_error
    - functionName:    njs_vm_bind
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 950
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_prop_init
        - njs_vm_bind2
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:953,5'
          Dst:             njs_object_prop_init
        - Src:             'src/njs_vm.c:957,12'
          Dst:             njs_vm_bind2
    - functionName:    njs_vm_global
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_error3
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 838
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_throw_error_va
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:846,5'
          Dst:             njs_throw_error_va
    - functionName:    njs_vm_error2
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_throw_error_va
      functionUses:    216
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:831,5'
          Dst:             njs_throw_error_va
    - functionName:    njs_vm_throw
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_options
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_meta
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 803
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_constructor
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 788
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_external_ptr
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_exception_get
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 766
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vm_exception
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:767,15'
          Dst:             njs_vm_exception
    - functionName:    njs_vm_set_rejection_tracker
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 746
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_set_module_loader
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 740
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_execute_pending_job
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          89
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_vm_call
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:725,11'
          Dst:             njs_vm_call
    - functionName:    njs_vm_call
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vm_invoke
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:618,12'
          Dst:             njs_vm_invoke
    - functionName:    njs_vm_invoke
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 625
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          98
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_frame_invoke
        - njs_function_lambda_frame
        - njs_function_native_frame
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:628,11'
          Dst:             njs_function_native_frame
        - Src:             'src/njs_vm.c:628,11'
          Dst:             njs_function_lambda_frame
        - Src:             'src/njs_vm.c:634,12'
          Dst:             njs_function_frame_invoke
    - functionName:    njs_vm_start
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 696
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vmcode_interpreter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:699,11'
          Dst:             njs_vmcode_interpreter
    - functionName:    njs_vm_enqueue_job
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          133
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:668,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_vm.c:670,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_vm.c:677,23'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vm.c:679,13'
          Dst:             njs_memory_error
    - functionName:    njs_vm_pending
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_scopes_restore
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          44
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_constructors_init
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          235
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_clone
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          320
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - getpagesize
        - njs_arr_add_multiple
        - njs_arr_create
        - njs_mp_align
        - njs_mp_destroy
        - njs_mp_fast_create
        - njs_scope_make
        - njs_vm_protos_init
        - njs_vm_runtime_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:405,34'
          Dst:             getpagesize
        - Src:             'src/njs_vm.c:405,11'
          Dst:             njs_mp_fast_create
        - Src:             'src/njs_vm.c:410,11'
          Dst:             njs_mp_align
        - Src:             'src/njs_vm.c:426,11'
          Dst:             njs_vm_runtime_init
        - Src:             'src/njs_vm.c:431,11'
          Dst:             njs_vm_protos_init
        - Src:             'src/njs_vm.c:436,14'
          Dst:             njs_scope_make
        - Src:             'src/njs_vm.c:442,31'
          Dst:             njs_arr_create
        - Src:             'src/njs_vm.c:449,17'
          Dst:             njs_arr_add_multiple
        - Src:             'src/njs_vm.c:470,5'
          Dst:             njs_mp_destroy
    - functionName:    njs_vm_protos_init
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          147
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_vm_constructors_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:586,24'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vm.c:588,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_vm.c:598,5'
          Dst:             njs_vm_constructors_init
    - functionName:    njs_vm_reuse
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_make_shared
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:387,12'
          Dst:             njs_object_make_shared
    - functionName:    njs_vm_compile_module
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          184
      EdgeCount:       25
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_scope
        - njs_generator_init
        - njs_memory_error
        - njs_module_add
        - njs_module_find
        - njs_mp_zalloc
        - njs_parser
        - njs_parser_init
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:326,14'
          Dst:             njs_module_find
        - Src:             'src/njs_vm.c:331,14'
          Dst:             njs_module_add
        - Src:             'src/njs_vm.c:336,11'
          Dst:             njs_parser_init
        - Src:             'src/njs_vm.c:343,11'
          Dst:             njs_parser
        - Src:             'src/njs_vm.c:350,11'
          Dst:             njs_generator_init
        - Src:             'src/njs_vm.c:352,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:356,12'
          Dst:             njs_generate_scope
        - Src:             'src/njs_vm.c:358,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:363,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_vm.c:365,9'
          Dst:             njs_memory_error
    - functionName:    njs_vm_add_module
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_module_add
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:310,12'
          Dst:             njs_module_add
    - functionName:    njs_vm_memory_pool
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    61
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_compile
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          414
      EdgeCount:       68
      CyclomaticComplexity: 20
      functionsReached:
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_join
        - njs_disassembler
        - njs_dprint
        - njs_generate_scope
        - njs_generator_init
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser
        - njs_parser_init
        - njs_parser_serialize_ast
        - njs_scope_make
        - njs_throw_error
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:228,11'
          Dst:             njs_parser_init
        - Src:             'src/njs_vm.c:234,11'
          Dst:             njs_parser
        - Src:             'src/njs_vm.c:240,9'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_vm.c:240,9'
          Dst:             njs_chb_init
        - Src:             'src/njs_vm.c:240,9'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vm.c:240,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_vm.c:241,15'
          Dst:             njs_parser_serialize_ast
        - Src:             'src/njs_vm.c:246,13'
          Dst:             njs_chb_join
        - Src:             'src/njs_vm.c:250,9'
          Dst:             njs_dprint
        - Src:             'src/njs_vm.c:252,9'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_vm.c:253,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_vm.c:259,11'
          Dst:             njs_generator_init
        - Src:             'src/njs_vm.c:261,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:265,12'
          Dst:             njs_generate_scope
        - Src:             'src/njs_vm.c:268,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vm.c:277,15'
          Dst:             njs_scope_make
        - Src:             'src/njs_vm.c:300,9'
          Dst:             njs_disassembler
    - functionName:    njs_vm_destroy
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:207,5'
          Dst:             njs_mp_destroy
    - functionName:    njs_vm_call_exit_hook
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_vm_call
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:197,16'
          Dst:             njs_vm_call
    - functionName:    njs_vm_ctor_push
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          130
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - njs_arr_add
        - njs_arr_create
        - njs_memory_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:158,32'
          Dst:             njs_arr_create
        - Src:             'src/njs_vm.c:162,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_vm.c:166,30'
          Dst:             njs_arr_create
        - Src:             'src/njs_vm.c:170,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_vm.c:175,12'
          Dst:             njs_arr_add
        - Src:             'src/njs_vm.c:177,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_vm.c:181,17'
          Dst:             njs_arr_add
        - Src:             'src/njs_vm.c:183,9'
          Dst:             njs_memory_error
    - functionName:    njs_vm_create
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         62
      ICount:          459
      EdgeCount:       85
      CyclomaticComplexity: 25
      functionsReached:
        - getpagesize
        - njs_builtin_objects_create
        - njs_mp_fast_create
        - njs_mp_zalign
        - njs_regexp_init
        - njs_scope_global_index
        - njs_vm_protos_init
        - njs_vm_runtime_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vm.c:39,33'
          Dst:             getpagesize
        - Src:             'src/njs_vm.c:39,10'
          Dst:             njs_mp_fast_create
        - Src:             'src/njs_vm.c:44,10'
          Dst:             njs_mp_zalign
        - Src:             'src/njs_vm.c:51,11'
          Dst:             njs_regexp_init
        - Src:             'src/njs_vm.c:64,15'
          Dst:             njs_builtin_objects_create
        - Src:             'src/njs_vm.c:79,15'
          Dst:             njs_vm_runtime_init
        - Src:             'src/njs_vm.c:110,11'
          Dst:             njs_vm_protos_init
        - Src:             'src/njs_vm.c:140,9'
          Dst:             njs_scope_global_index
    - functionName:    njs_vm_opt_init
      functionSourceFile: '/src/njs/src/njs_vm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_function_new_object
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2596
      functionLinenumberEnd: 2628
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          118
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_object_alloc
        - njs_value_property
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2602,14'
          Dst:             njs_object_alloc
        - Src:             'src/njs_vmcode.c:2617,11'
          Dst:             njs_value_property
    - functionName:    njs_vmcode_error
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2931
      functionLinenumberEnd: 2942
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2937,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:2940,9'
          Dst:             njs_throw_error
    - functionName:    njs_vmcode_finally
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2879
      functionLinenumberEnd: 2926
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          176
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_throw_error
        - njs_vm_throw
        - njs_vmcode_return
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2887,9'
          Dst:             njs_vm_throw
        - Src:             'src/njs_vmcode.c:2905,9'
          Dst:             njs_vmcode_return
        - Src:             'src/njs_vmcode.c:2916,13'
          Dst:             njs_throw_error
    - functionName:    njs_vmcode_return
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2633
      functionLinenumberEnd: 2649
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_frame_free
        - njs_vm_scopes_restore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2644,5'
          Dst:             njs_vm_scopes_restore
        - Src:             'src/njs_vmcode.c:2648,5'
          Dst:             njs_function_frame_free
    - functionName:    njs_vmcode_try_end
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2849
      functionLinenumberEnd: 2864
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2861,9'
          Dst:             njs_mp_free
    - functionName:    njs_vmcode_try_continue
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2835
      functionLinenumberEnd: 2838
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vmcode_try_break
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2817
      functionLinenumberEnd: 2823
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vmcode_try_start
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2776
      functionLinenumberEnd: 2806
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          122
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2785,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vmcode.c:2787,13'
          Dst:             njs_memory_error
    - functionName:    njs_vmcode_await
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2684
      functionLinenumberEnd: 2764
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          387
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - njs_function_frame_save
        - njs_memory_error
        - njs_mp_alloc
        - njs_promise_create_function
        - njs_promise_perform_then
        - njs_promise_resolve
        - njs_throw_error
        - njs_vmcode_return
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2693,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:2695,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:2701,11'
          Dst:             njs_promise_resolve
        - Src:             'src/njs_vmcode.c:2707,15'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vmcode.c:2709,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_vmcode.c:2715,21'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_vmcode.c:2723,15'
          Dst:             njs_function_frame_save
        - Src:             'src/njs_vmcode.c:2729,21'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_vmcode.c:2743,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_vmcode.c:2755,11'
          Dst:             njs_promise_perform_then
        - Src:             'src/njs_vmcode.c:2761,5'
          Dst:             njs_vmcode_return
    - functionName:    njs_vmcode_import
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2654
      functionLinenumberEnd: 2678
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          86
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_module_find
        - njs_vm_invoke
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2658,9'
          Dst:             njs_module_find
        - Src:             'src/njs_vmcode.c:2670,11'
          Dst:             njs_vm_invoke
    - functionName:    njs_vmcode_proto_init
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2159
      functionLinenumberEnd: 2194
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          108
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_flathsh_unique_find
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2172,11'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_vmcode.c:2192,5'
          Dst:             njs_throw_error
    - functionName:    njs_vmcode_arguments
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1976
      functionLinenumberEnd: 2001
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          172
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_function_arguments_object_init
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:1985,15'
          Dst:             njs_function_arguments_object_init
        - Src:             'src/njs_vmcode.c:1993,13'
          Dst:             njs_throw_error
    - functionName:    njs_function_frame_create
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2534
      functionLinenumberEnd: 2591
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          278
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_function_lambda_frame
        - njs_function_native_frame
        - njs_function_new_object
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_throw_error
        - njs_type_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2551,24'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vmcode.c:2553,21'
          Dst:             njs_memory_error
        - Src:             'src/njs_vmcode.c:2562,17'
          Dst:             njs_type_string
        - Src:             'src/njs_vmcode.c:2562,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:2568,26'
          Dst:             njs_function_new_object
        - Src:             'src/njs_vmcode.c:2578,15'
          Dst:             njs_function_native_frame
        - Src:             'src/njs_vmcode.c:2578,15'
          Dst:             njs_function_lambda_frame
        - Src:             'src/njs_vmcode.c:2582,13'
          Dst:             njs_mp_free
        - Src:             'src/njs_vmcode.c:2588,5'
          Dst:             njs_type_string
        - Src:             'src/njs_vmcode.c:2588,5'
          Dst:             njs_throw_error
    - functionName:    njs_vmcode_property_init
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2057
      functionLinenumberEnd: 2153
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         105
      ICount:          963
      EdgeCount:       136
      CyclomaticComplexity: 33
      functionsReached:
        - njs_array_expand
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_flathsh_unique_insert
        - njs_key_to_index
        - njs_object_to_string
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_vmcode.c:2066,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_vmcode.c:2068,15'
          Dst:             njs_key_to_index
        - Src:             'src/njs_vmcode.c:2070,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:2081,19'
          Dst:             njs_array_expand
        - Src:             'src/njs_vmcode.c:2104,23'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:2117,19'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vmcode.c:2128,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_vmcode.c:2130,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:2145,9'
          Dst:             njs_type_string
        - Src:             'src/njs_vmcode.c:2145,9'
          Dst:             njs_throw_error
    - functionName:    njs_vmcode_debugger
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2383
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vmcode_typeof
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2324
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          129
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vmcode.c:2357,5'
          Dst:             njs_string_new
    - functionName:    njs_vmcode_instance_of
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2267
      functionLinenumberEnd: 2319
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          178
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_throw_error
        - njs_value_property
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2274,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:2287,15'
          Dst:             njs_value_property
        - Src:             'src/njs_vmcode.c:2296,17'
          Dst:             njs_throw_error
    - functionName:    njs_vmcode_regexp
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2006
      functionLinenumberEnd: 2021
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_regexp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2012,14'
          Dst:             njs_regexp_alloc
    - functionName:    njs_vmcode_function
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1949
      functionLinenumberEnd: 1971
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          124
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_alloc
        - njs_function_capture_closure
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:1957,16'
          Dst:             njs_function_alloc
        - Src:             'src/njs_vmcode.c:1962,9'
          Dst:             njs_function_capture_closure
    - functionName:    njs_vmcode_array
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1908
      functionLinenumberEnd: 1944
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          118
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - njs_array_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:1916,13'
          Dst:             njs_array_alloc
    - functionName:    njs_vmcode_object
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1891
      functionLinenumberEnd: 1903
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_object_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:1894,14'
          Dst:             njs_object_alloc
    - functionName:    njs_vmcode_property_foreach
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2236
      functionLinenumberEnd: 2261
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          98
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_value_enumerate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2240,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vmcode.c:2242,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_vmcode.c:2247,19'
          Dst:             njs_value_enumerate
        - Src:             'src/njs_vmcode.c:2252,9'
          Dst:             njs_memory_error
    - functionName:    njs_vmcode_property_in
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2200
      functionLinenumberEnd: 2230
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          825
      EdgeCount:       113
      CyclomaticComplexity: 28
      functionsReached:
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_object_to_string
        - njs_property_query
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_vmcode.c:2206,9'
          Dst:             njs_type_string
        - Src:             'src/njs_vmcode.c:2206,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:2222,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vmcode.c:2222,11'
          Dst:             njs_property_query
    - functionName:    njs_vmcode_template_literal
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2026
      functionLinenumberEnd: 2051
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          181
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_array_destroy
        - njs_dtoa2
        - njs_function_call2
        - njs_string_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vmcode.c:2040,5'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:2042,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_vmcode.c:2048,5'
          Dst:             njs_array_destroy
    - functionName:    njs_values_equal
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2415
      functionLinenumberEnd: 2487
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          284
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - njs_string_eq
        - njs_string_to_number
        - njs_value_to_primitive
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2439,20'
          Dst:             njs_string_eq
        - Src:             'src/njs_vmcode.c:2473,35'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:2478,11'
          Dst:             njs_value_to_primitive
    - functionName:    njs_string_concat
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2390
      functionLinenumberEnd: 2410
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_string_alloc
        - njs_string_prop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2395,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_vmcode.c:2396,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_vmcode.c:2401,13'
          Dst:             njs_string_alloc
    - functionName:    njs_primitive_values_compare
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2500
      functionLinenumberEnd: 2528
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          124
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - njs_string_cmp
        - njs_string_to_number
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_vmcode.c:2510,20'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:2514,16'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:2518,17'
          Dst:             njs_string_cmp
    - functionName:    njs_throw_cannot_property
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2948
      functionLinenumberEnd: 2964
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          856
      EdgeCount:       113
      CyclomaticComplexity: 28
      functionsReached:
        - njs_dtoa2
        - njs_object_to_string
        - njs_string_new
        - njs_symbol_descriptive_string
        - njs_throw_error
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_vmcode.c:2953,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:2953,11'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:2958,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_vmcode.c:2958,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:2960,5'
          Dst:             njs_throw_error
    - functionName:    njs_vmcode_interpreter
      functionSourceFile: '/src/njs/src/njs_vmcode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 1886
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3298
      ICount:          30580
      EdgeCount:       4354
      CyclomaticComplexity: 1058
      functionsReached:
        - fmod
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_error_stack_attach
        - njs_function_frame_create
        - njs_function_frame_invoke
        - njs_function_name_set
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_object_prop_define
        - njs_object_to_string
        - njs_primitive_value_to_string
        - njs_primitive_values_compare
        - njs_string_concat
        - njs_string_eq
        - njs_string_new
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_cannot_property
        - njs_throw_error
        - njs_type_string
        - njs_value_property
        - njs_value_property_delete
        - njs_value_property_set
        - njs_value_to_primitive
        - njs_values_equal
        - njs_vm_exception
        - njs_vm_scopes_restore
        - njs_vm_throw
        - njs_vmcode_arguments
        - njs_vmcode_array
        - njs_vmcode_await
        - njs_vmcode_debugger
        - njs_vmcode_error
        - njs_vmcode_finally
        - njs_vmcode_function
        - njs_vmcode_import
        - njs_vmcode_instance_of
        - njs_vmcode_object
        - njs_vmcode_property_foreach
        - njs_vmcode_property_in
        - njs_vmcode_property_init
        - njs_vmcode_proto_init
        - njs_vmcode_regexp
        - njs_vmcode_return
        - njs_vmcode_template_literal
        - njs_vmcode_try_break
        - njs_vmcode_try_continue
        - njs_vmcode_try_end
        - njs_vmcode_try_start
        - njs_vmcode_typeof
        - pow
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_vmcode.c:1759,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_vmcode.c:245,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:246,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:255,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:256,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:258,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:260,15'
          Dst:             njs_value_property
        - Src:             'src/njs_vmcode.c:271,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:272,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:275,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:279,24'
          Dst:             njs_throw_cannot_property
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:299,23'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vmcode.c:306,15'
          Dst:             njs_value_property
        - Src:             'src/njs_vmcode.c:317,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:318,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:334,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:344,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:345,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:361,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:371,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:372,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:388,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:398,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:399,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:415,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:425,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:426,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:429,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:431,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vmcode.c:431,15'
          Dst:             njs_value_property
        - Src:             'src/njs_vmcode.c:451,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:453,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:463,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:464,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:467,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:477,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:489,13'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_vmcode.c:493,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:496,25'
          Dst:             njs_primitive_values_compare
        - Src:             'src/njs_vmcode.c:504,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:505,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:508,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:518,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:530,13'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_vmcode.c:534,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:537,25'
          Dst:             njs_primitive_values_compare
        - Src:             'src/njs_vmcode.c:545,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:546,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:549,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:559,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:571,13'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_vmcode.c:575,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:578,25'
          Dst:             njs_primitive_values_compare
        - Src:             'src/njs_vmcode.c:586,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:587,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:590,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:600,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:612,13'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_vmcode.c:616,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:619,25'
          Dst:             njs_primitive_values_compare
        - Src:             'src/njs_vmcode.c:627,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:628,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:631,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:641,19'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_vmcode.c:653,13'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_vmcode.c:659,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vmcode.c:691,17'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vmcode.c:696,21'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vmcode.c:699,21'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:703,24'
          Dst:             njs_dtoa2
        - Src:             'src/njs_vmcode.c:712,19'
          Dst:             njs_string_concat
        - Src:             'src/njs_vmcode.c:718,19'
          Dst:             njs_primitive_value_to_string
        - Src:             'src/njs_vmcode.c:723,19'
          Dst:             njs_string_concat
        - Src:             'src/njs_vmcode.c:736,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:737,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:739,15'
          Dst:             njs_values_equal
        - Src:             'src/njs_vmcode.c:744,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:753,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:754,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:756,15'
          Dst:             njs_values_equal
        - Src:             'src/njs_vmcode.c:761,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:795,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:796,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:798,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:808,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:809,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:811,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:821,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:822,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:824,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:836,23'
          Dst:             pow
        - Src:             'src/njs_vmcode.c:844,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:845,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:847,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:857,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:858,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:860,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:862,15'
          Dst:             fmod
        - Src:             'src/njs_vmcode.c:870,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:871,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:873,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:884,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:885,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:887,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:898,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:899,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:901,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:912,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:913,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:915,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:929,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:930,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:932,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:945,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:946,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:948,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:957,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:959,15'
          Dst:             njs_vmcode_template_literal
        - Src:             'src/njs_vmcode.c:970,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:971,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:972,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:974,15'
          Dst:             njs_vmcode_property_in
        - Src:             'src/njs_vmcode.c:984,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:985,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:989,24'
          Dst:             njs_throw_cannot_property
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:1001,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vmcode.c:1001,15'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_vmcode.c:1006,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1015,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1016,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1018,15'
          Dst:             njs_vmcode_property_foreach
        - Src:             'src/njs_vmcode.c:1028,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1029,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.h:1121,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_vmcode.c:1033,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1042,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1043,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.h:1121,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_vmcode.c:1047,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1056,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1068,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1076,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1088,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1096,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1108,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1116,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1119,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1146,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:1148,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1160,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:1162,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1172,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_vmcode.c:1174,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1184,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1185,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1195,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1197,15'
          Dst:             njs_vmcode_object
        - Src:             'src/njs_vmcode.c:1207,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1209,15'
          Dst:             njs_vmcode_array
        - Src:             'src/njs_vmcode.c:1219,15'
          Dst:             njs_vmcode_function
        - Src:             'src/njs_vmcode.c:1229,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1231,15'
          Dst:             njs_vmcode_regexp
        - Src:             'src/njs_vmcode.c:1241,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1242,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1243,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1245,15'
          Dst:             njs_vmcode_instance_of
        - Src:             'src/njs_vmcode.c:1255,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1256,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1258,15'
          Dst:             njs_vmcode_typeof
        - Src:             'src/njs_vmcode.c:1268,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1279,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1280,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1291,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1293,15'
          Dst:             njs_vmcode_debugger
        - Src:             'src/njs_vmcode.c:1304,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1314,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1330,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1331,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1332,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1334,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_vmcode.c:1345,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1346,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1347,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1351,24'
          Dst:             njs_throw_cannot_property
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:1373,23'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vmcode.c:1380,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_vmcode.c:1391,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1392,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1395,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:1399,13'
          Dst:             njs_type_string
        - Src:             'src/njs_vmcode.c:1399,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1405,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_vmcode.c:1405,15'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_vmcode.c:1417,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1430,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1443,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1444,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.h:1121,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_vmcode.c:1459,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1460,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1463,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1464,15'
          Dst:             njs_vmcode_property_init
        - Src:             'src/njs_vmcode.c:1476,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1480,9'
          Dst:             njs_vmcode_return
        - Src:             'src/njs_vmcode.c:1488,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1492,15'
          Dst:             njs_function_frame_create
        - Src:             'src/njs_vmcode.c:1506,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1507,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1511,15'
          Dst:             njs_function_frame_create
        - Src:             'src/njs_vmcode.c:1529,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1531,15'
          Dst:             njs_function_frame_invoke
        - Src:             'src/njs_vmcode.c:1544,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1545,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1560,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_vmcode.c:1568,15'
          Dst:             njs_vmcode_arguments
        - Src:             'src/njs_vmcode.c:1579,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1581,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:1595,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1597,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1598,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1601,20'
          Dst:             njs_throw_cannot_property
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_vmcode.c:1617,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1619,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1623,15'
          Dst:             njs_function_name_set
        - Src:             'src/njs_vmcode.c:1635,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1636,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1639,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1640,15'
          Dst:             njs_vmcode_proto_init
        - Src:             'src/njs_vmcode.c:1652,15'
          Dst:             njs_vmcode_import
        - Src:             'src/njs_vmcode.c:1664,15'
          Dst:             njs_vmcode_await
        - Src:             'src/njs_vmcode.c:1678,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1680,15'
          Dst:             njs_vmcode_try_start
        - Src:             'src/njs_vmcode.c:1692,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1693,9'
          Dst:             njs_vm_throw
        - Src:             'src/njs_vmcode.c:1705,15'
          Dst:             njs_vmcode_try_break
        - Src:             'src/njs_vmcode.c:1716,15'
          Dst:             njs_vmcode_try_continue
        - Src:             'src/njs_vmcode.c:1722,15'
          Dst:             njs_vmcode_try_end
        - Src:             'src/njs_vmcode.c:1737,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1739,19'
          Dst:             njs_vm_exception
        - Src:             'src/njs_vmcode.c:1742,19'
          Dst:             njs_vmcode_try_end
        - Src:             'src/njs_vmcode.c:1757,15'
          Dst:             njs_vmcode_finally
        - Src:             'src/njs_vmcode.c:1777,22'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vmcode.c:1779,17'
          Dst:             njs_memory_error
        - Src:             'src/njs_vmcode.c:1797,18'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_vmcode.c:1799,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_vmcode.c:1825,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1831,9'
          Dst:             njs_vmcode_error
        - Src:             'src/njs_vmcode.c:1837,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_vmcode.c:1847,9'
          Dst:             njs_error_stack_attach
        - Src:             'src/njs_vmcode.c:1871,9'
          Dst:             njs_vm_scopes_restore
        - Src:             'src/njs_vmcode.c:1875,13'
          Dst:             njs_mp_free
    - functionName:    pow
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_serialize_node
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9749
      functionLinenumberEnd: 9910
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         123
      ICount:          1206
      EdgeCount:       245
      CyclomaticComplexity: 124
      functionsReached:
        - njs_chb_append0
        - njs_chb_sprintf
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:9758,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:9759,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9759,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9761,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9761,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9762,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9762,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9763,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9763,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9764,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9764,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9765,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9765,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9766,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9766,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9767,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9767,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9768,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9768,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9769,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9769,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9770,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9770,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9771,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9771,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9772,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9772,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9773,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9773,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9774,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9774,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9775,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9775,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9776,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9776,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9777,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9777,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9778,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9778,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9779,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9779,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9780,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9780,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9781,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9781,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9782,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9782,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9783,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9783,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9784,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9784,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9785,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9785,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9786,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9786,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9787,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9787,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9788,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9788,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9789,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9789,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9790,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9790,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9791,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9791,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9792,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9792,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9793,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9793,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9794,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9794,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9795,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9795,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9796,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9796,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9797,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9797,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9798,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9798,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9799,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9799,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9800,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9800,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9801,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9801,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9802,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9802,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9803,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9803,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9804,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9804,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9805,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9805,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9806,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9806,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9807,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9807,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9808,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9808,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9809,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9809,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9810,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9810,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9811,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9811,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9812,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9812,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9813,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9813,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9814,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9814,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9815,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9815,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9816,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9816,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9817,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9817,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9818,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9818,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9819,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9819,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9821,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9821,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9822,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9822,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9823,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9823,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9824,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9824,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9825,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9825,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9826,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9826,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9827,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9827,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9828,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9828,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9829,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9829,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9830,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9830,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9831,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9831,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9832,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9832,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9834,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9834,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9835,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9835,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9836,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9836,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9837,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9837,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9838,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9838,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9839,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9839,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9841,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9841,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9843,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9843,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9844,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9844,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9845,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9845,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9846,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9846,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9847,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9847,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9848,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9848,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9849,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9849,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9850,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9850,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9852,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9852,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9853,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9853,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9854,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9854,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9855,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9855,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9856,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9856,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9857,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9857,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9858,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9858,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9859,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9859,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9860,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9860,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9861,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9861,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9862,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9862,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9863,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9863,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9864,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9864,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9865,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9865,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9866,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9866,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9867,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9867,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9868,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9868,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9869,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9869,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9870,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9870,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9871,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9871,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9872,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9872,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9873,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9873,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9874,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9874,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9875,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9875,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9876,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9876,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9877,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9877,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9878,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9878,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9879,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9879,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9880,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9880,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9881,5'
          Dst:             strlen
        - Src:             'src/njs_parser.c:9881,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9905,9'
          Dst:             njs_chb_sprintf
    - functionName:    njs_parser_expression_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5566
      functionLinenumberEnd: 5572
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          162
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5567,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5571,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_failed_state
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    104
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:674,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:677,9'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_lexer_error
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9555
      functionLinenumberEnd: 9566
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_parser_error
      functionUses:    108
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9563,5'
          Dst:             njs_parser_error
    - functionName:    njs_parser_error
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9528
      functionLinenumberEnd: 9549
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_error_new
        - njs_error_stack_set
        - njs_vm_runtime_init
        - njs_vm_throw
        - njs_vsprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9534,9'
          Dst:             njs_vm_runtime_init
        - Src:             'src/njs_parser.c:9540,9'
          Dst:             njs_vsprintf
        - Src:             'src/njs_parser.c:9542,5'
          Dst:             njs_error_new
        - Src:             'src/njs_parser.c:9545,9'
          Dst:             njs_error_stack_set
        - Src:             'src/njs_parser.c:9548,5'
          Dst:             njs_vm_throw
    - functionName:    njs_parser_labelled_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7005
      functionLinenumberEnd: 7038
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          551
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - njs_dtoa2
        - njs_label_remove
        - njs_mp_free
        - njs_mp_zalloc
        - njs_name_copy
        - njs_string_new
        - njs_symbol_descriptive_string
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7013,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_parser.c:7027,11'
          Dst:             njs_name_copy
        - Src:             'src/njs_parser.c:7032,11'
          Dst:             njs_label_remove
        - Src:             'src/njs_parser.c:7037,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_catch_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7229
      functionLinenumberEnd: 7259
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          270
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7235,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7249,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7252,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:7258,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_block_statement_open_brace
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5193
      functionLinenumberEnd: 5208
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          76
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_parser_block_statement
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5200,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5202,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:5207,12'
          Dst:             njs_parser_block_statement
    - functionName:    njs_parser_catch_finally
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7321
      functionLinenumberEnd: 7330
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          117
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7329,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_block_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5164
      functionLinenumberEnd: 5187
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          145
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
        - njs_parser_scope_begin
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5168,11'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:5185,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_scope_begin
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 723
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          174
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_scope_rbtree_compare
        - njs_rbtree_init
        - njs_variable_add
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:691,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:698,5'
          Dst:             njs_rbtree_init
        - Src:             'src/njs_parser.c:698,5'
          Dst:             njs_parser_scope_rbtree_compare
        - Src:             'src/njs_parser.c:699,5'
          Dst:             njs_rbtree_init
        - Src:             'src/njs_parser.c:699,5'
          Dst:             njs_parser_scope_rbtree_compare
        - Src:             'src/njs_parser.c:700,5'
          Dst:             njs_rbtree_init
        - Src:             'src/njs_parser.c:700,5'
          Dst:             njs_parser_scope_rbtree_compare
        - Src:             'src/njs_parser.c:709,19'
          Dst:             njs_variable_add
    - functionName:    njs_parser_block_statement_close_brace
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5214
      functionLinenumberEnd: 5241
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          204
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_scope_end
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5225,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5237,5'
          Dst:             njs_parser_scope_end
        - Src:             'src/njs_parser.c:5239,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5240,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_statement_list
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5247
      functionLinenumberEnd: 5250
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5250,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_statement_list_item
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5285
      functionLinenumberEnd: 5296
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_declaration
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5288,11'
          Dst:             njs_parser_declaration
    - functionName:    njs_parser_statement_list_next
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5258
      functionLinenumberEnd: 5279
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          261
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5263,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:5272,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:5277,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_declaration
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5086
      functionLinenumberEnd: 5135
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          281
      EdgeCount:       38
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_parser_hoistable_declaration
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:5094,5'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:5106,9'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:5089,11'
          Dst:             njs_parser_hoistable_declaration
        - Src:             'src/njs_parser.c:5101,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:5114,17'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5133,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4880
      functionLinenumberEnd: 4934
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          578
      EdgeCount:       48
      CyclomaticComplexity: 12
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser_statement_wo_node
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4901,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4903,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4904,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4909,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4912,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:4918,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4921,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:4927,11'
          Dst:             njs_parser_statement_wo_node
        - Src:             'src/njs_parser.c:4932,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_check_error_state
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_export
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8285
      functionLinenumberEnd: 8385
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          484
      EdgeCount:       65
      CyclomaticComplexity: 21
      functionsReached:
        - memcmp
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_reference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8292,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8299,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8309,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8311,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8317,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8321,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:8327,14'
          Dst:             memcmp
        - Src:             'src/njs_parser.c:8329,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8333,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:8339,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8344,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:8350,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8354,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8360,23'
          Dst:             njs_parser_reference
        - Src:             'src/njs_parser.c:8367,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8369,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:8372,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8374,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8384,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5034
      functionLinenumberEnd: 5080
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          254
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5060,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5079,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_import
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8441
      functionLinenumberEnd: 8522
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          451
      EdgeCount:       65
      CyclomaticComplexity: 21
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_module
        - njs_parser_variable_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8446,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8454,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8462,12'
          Dst:             njs_parser_variable_node
        - Src:             'src/njs_parser.c:8472,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8474,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8483,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8485,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8494,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8503,24'
          Dst:             njs_parser_module
        - Src:             'src/njs_parser.c:8508,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8510,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8515,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8521,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_statement_wo_node
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4940
      functionLinenumberEnd: 5028
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          399
      EdgeCount:       40
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_mp_free
        - njs_parser_variable_statement
      functionUses:    10
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4941,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4947,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4948,16'
          Dst:             njs_parser_variable_statement
        - Src:             'src/njs_parser.c:4951,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4952,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:5008,21'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:5025,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_variable_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5323
      functionLinenumberEnd: 5328
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          97
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5328,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_if_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5581
      functionLinenumberEnd: 5616
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          347
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5589,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5591,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5602,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5608,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5614,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_iteration_statement_do
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5684
      functionLinenumberEnd: 5700
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          156
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5687,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5698,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_iteration_statement_while
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5733
      functionLinenumberEnd: 5747
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          153
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5736,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5745,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_iteration_statement_for
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5778
      functionLinenumberEnd: 5801
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          184
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_parser_lexer_error
        - njs_parser_scope_begin
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5782,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5784,15'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:5791,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5797,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5797,16'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_switch_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6681
      functionLinenumberEnd: 6702
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          235
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6685,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6694,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6700,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_continue_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6512
      functionLinenumberEnd: 6513
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_break_continue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6513,12'
          Dst:             njs_parser_break_continue
    - functionName:    njs_parser_break_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6523
      functionLinenumberEnd: 6524
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_break_continue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6524,12'
          Dst:             njs_parser_break_continue
    - functionName:    njs_parser_return_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6592
      functionLinenumberEnd: 6643
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          320
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6617,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6605,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6610,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6619,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6635,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6642,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_with_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6670
      functionLinenumberEnd: 6671
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6671,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6671,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_throw_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7047
      functionLinenumberEnd: 7068
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          173
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7050,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7058,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7066,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_try_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7094
      functionLinenumberEnd: 7110
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          156
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7097,11'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7108,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_debugger_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7336
      functionLinenumberEnd: 7353
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          175
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7337,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7350,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7352,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_labelled_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6961
      functionLinenumberEnd: 6999
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          181
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_label_add
        - njs_label_find
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_parser_lexer_error
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6967,13'
          Dst:             njs_label_find
        - Src:             'src/njs_parser.c:6969,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6974,13'
          Dst:             njs_label_add
        - Src:             'src/njs_parser.c:6979,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6981,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:6989,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_parser.c:6997,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_expression_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5497
      functionLinenumberEnd: 5560
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          343
      EdgeCount:       43
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:5501,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:5503,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5508,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5516,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:5522,20'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5522,20'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5531,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:5537,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5558,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4854
      functionLinenumberEnd: 4857
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4857,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_assignment_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4592
      functionLinenumberEnd: 4611
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          144
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_alloc
        - njs_parser_match_arrow_expression
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4596,15'
          Dst:             njs_parser_match_arrow_expression
        - Src:             'src/njs_parser.c:4609,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_expression_comma
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4865
      functionLinenumberEnd: 4868
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_expression_comma
        - njs_parser_expression_node
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4868,12'
          Dst:             njs_parser_expression_node
        - Src:             'src/njs_parser.c:4868,12'
          Dst:             njs_parser_expression_comma
    - functionName:    njs_parser_expression_node
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3554
      functionLinenumberEnd: 3580
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          274
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3564,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3567,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3577,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3579,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_match_arrow_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4622
      functionLinenumberEnd: 4697
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         71
      ICount:          399
      EdgeCount:       88
      CyclomaticComplexity: 19
      functionsReached:
        - njs_lexer_peek_token
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4626,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:4642,13'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:4658,21'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:4668,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:4674,21'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:4683,13'
          Dst:             njs_lexer_peek_token
    - functionName:    njs_parser_arrow_function
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7690
      functionLinenumberEnd: 7796
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          614
      EdgeCount:       80
      CyclomaticComplexity: 21
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_scope_begin
        - njs_parser_variable_reference
        - njs_variable_add
        - njs_variable_scope_add
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:7698,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7700,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7706,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7710,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7720,11'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:7727,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7734,11'
          Dst:             njs_variable_scope_add
        - Src:             'src/njs_parser.c:7741,11'
          Dst:             njs_parser_variable_reference
        - Src:             'src/njs_parser.c:7749,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7759,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7766,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:7770,15'
          Dst:             njs_variable_add
        - Src:             'src/njs_parser.c:7785,9'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_conditional_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4496
      functionLinenumberEnd: 4499
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4499,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_assignment_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4703
      functionLinenumberEnd: 4704
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_assignment_operator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4704,12'
          Dst:             njs_parser_assignment_operator
    - functionName:    njs_parser_assignment_operator
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4711
      functionLinenumberEnd: 4837
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          406
      EdgeCount:       53
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_lvalue_ref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4716,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4798,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4805,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:4811,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:4818,20'
          Dst:             njs_parser_lvalue_ref
        - Src:             'src/njs_parser.c:4823,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4832,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4835,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_lvalue_ref
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2679
      functionLinenumberEnd: 2689
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_parser_property_ref
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2688,12'
          Dst:             njs_parser_property_ref
    - functionName:    njs_parser_assignment_operator_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4843
      functionLinenumberEnd: 4844
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4844,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_right_link_pop
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2798
      functionLinenumberEnd: 2802
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2802,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_property_ref
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2660
      functionLinenumberEnd: 2674
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_short_circuit_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4482
      functionLinenumberEnd: 4485
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4485,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_conditional_question_mark
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4507
      functionLinenumberEnd: 4540
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          296
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_in_stack_push
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4511,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4514,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4522,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4530,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4532,9'
          Dst:             njs_lexer_in_stack_push
        - Src:             'src/njs_parser.c:4538,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_conditional_colon
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4546
      functionLinenumberEnd: 4566
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          155
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_in_stack_pop
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4553,5'
          Dst:             njs_lexer_in_stack_pop
        - Src:             'src/njs_parser.c:4555,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4564,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_conditional_colon_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4572
      functionLinenumberEnd: 4582
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          96
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4582,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_logical_OR_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4413
      functionLinenumberEnd: 4416
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4416,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_coalesce_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4437
      functionLinenumberEnd: 4476
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          329
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4450,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4461,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4471,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4474,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_bitwise_OR_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4362
      functionLinenumberEnd: 4365
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4365,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_bitwise_XOR_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4338
      functionLinenumberEnd: 4341
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4341,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_bitwise_OR_expression_or
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4373
      functionLinenumberEnd: 4376
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_bitwise_OR_expression_or
        - njs_parser_expression_node
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4376,12'
          Dst:             njs_parser_expression_node
        - Src:             'src/njs_parser.c:4376,12'
          Dst:             njs_parser_bitwise_OR_expression_or
    - functionName:    njs_parser_bitwise_AND_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4314
      functionLinenumberEnd: 4317
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4317,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_bitwise_XOR_expression_xor
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4349
      functionLinenumberEnd: 4352
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_bitwise_XOR_expression_xor
        - njs_parser_expression_node
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4352,12'
          Dst:             njs_parser_expression_node
        - Src:             'src/njs_parser.c:4352,12'
          Dst:             njs_parser_bitwise_XOR_expression_xor
    - functionName:    njs_parser_equality_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4247
      functionLinenumberEnd: 4250
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4250,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_bitwise_AND_expression_and
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4325
      functionLinenumberEnd: 4328
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_bitwise_AND_expression_and
        - njs_parser_expression_node
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4328,12'
          Dst:             njs_parser_expression_node
        - Src:             'src/njs_parser.c:4328,12'
          Dst:             njs_parser_bitwise_AND_expression_and
    - functionName:    njs_parser_relational_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4168
      functionLinenumberEnd: 4171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4171,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_equality_expression_match
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4258
      functionLinenumberEnd: 4305
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          297
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4268,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4286,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4289,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4299,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4303,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_shift_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4105
      functionLinenumberEnd: 4108
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4108,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_relational_expression_match
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4179
      functionLinenumberEnd: 4238
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          321
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_in_fail_get
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4189,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4211,13'
          Dst:             njs_lexer_in_fail_get
        - Src:             'src/njs_parser.c:4212,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:4219,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4222,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4232,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4236,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_additive_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4046
      functionLinenumberEnd: 4049
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4049,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_shift_expression_match
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4116
      functionLinenumberEnd: 4159
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          292
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4126,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4140,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4143,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4153,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4157,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_multiplicative_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3983
      functionLinenumberEnd: 3986
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3986,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_additive_expression_match
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4057
      functionLinenumberEnd: 4096
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          287
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4067,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4077,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4080,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4090,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4094,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_exponentiation_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3923
      functionLinenumberEnd: 3937
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_update_expression_post
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3935,16'
          Dst:             njs_parser_update_expression_post
    - functionName:    njs_parser_multiplicative_expression_match
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3994
      functionLinenumberEnd: 4037
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          292
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:4004,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:4018,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:4021,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:4031,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:4035,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_unary_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3712
      functionLinenumberEnd: 3779
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          303
      EdgeCount:       28
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3717,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3761,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3765,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3775,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3777,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_update_expression_post
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3628
      functionLinenumberEnd: 3681
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          357
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_lvalue_ref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3635,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3647,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3651,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3655,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3657,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:3662,20'
          Dst:             njs_parser_lvalue_ref
        - Src:             'src/njs_parser.c:3667,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3678,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3680,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_await
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3878
      functionLinenumberEnd: 3902
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          225
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3882,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:3887,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3894,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3900,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_update_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3589
      functionLinenumberEnd: 3622
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          260
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3593,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3605,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3609,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3617,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3620,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_unary_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3785
      functionLinenumberEnd: 3794
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          101
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
        - njs_parser_exponentiation_expression_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3789,16'
          Dst:             njs_parser_exponentiation_expression_match
        - Src:             'src/njs_parser.c:3793,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_unary_expression_next
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3800
      functionLinenumberEnd: 3872
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          451
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - njs_mp_free
        - njs_parser_lexer_error
        - njs_parser_optional_chain_target_property
        - njs_parser_property_ref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3830,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3809,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:3817,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3825,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3834,20'
          Dst:             njs_parser_property_ref
        - Src:             'src/njs_parser.c:3842,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3845,20'
          Dst:             njs_parser_optional_chain_target_property
        - Src:             'src/njs_parser.c:3854,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:3871,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_optional_chain_target_property
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2883
      functionLinenumberEnd: 2889
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_parser_property_ref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2888,12'
          Dst:             njs_parser_property_ref
    - functionName:    njs_parser_exponentiation_expression_match
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3943
      functionLinenumberEnd: 3974
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          324
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3951,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3955,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3958,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3968,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3972,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_left_hand_side_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3414
      functionLinenumberEnd: 3463
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          260
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3421,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3424,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:3430,13'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3434,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3443,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:3461,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_update_expression_unary
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3687
      functionLinenumberEnd: 3703
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          150
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_free
        - njs_parser_lexer_error
        - njs_parser_lvalue_ref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3689,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:3694,20'
          Dst:             njs_parser_lvalue_ref
        - Src:             'src/njs_parser.c:3702,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_new_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3372
      functionLinenumberEnd: 3385
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          116
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3381,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3383,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_left_hand_side_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3469
      functionLinenumberEnd: 3521
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          339
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser_create_call
        - njs_parser_lexer_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3473,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3476,16'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:3484,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3487,15'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3493,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3498,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:3507,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:3517,16'
          Dst:             njs_mp_free
    - functionName:    njs_parser_call_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2942
      functionLinenumberEnd: 2977
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          241
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_alloc
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:2955,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:2958,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2958,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2961,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2961,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2969,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2975,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_member_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2376
      functionLinenumberEnd: 2429
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          239
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_parser_lexer_error
        - njs_parser_primary_expression_test
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:2389,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:2394,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2394,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2400,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2400,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2403,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2409,15'
          Dst:             njs_parser_primary_expression_test
        - Src:             'src/njs_parser.c:2427,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_member_expression_new
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2590
      functionLinenumberEnd: 2618
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          170
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_token
        - njs_mp_alloc
        - njs_parser_lexer_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2599,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2605,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:2617,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2617,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_primary_expression_test
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         138
      ICount:          1325
      EdgeCount:       177
      CyclomaticComplexity: 41
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_escape_string_create
        - njs_parser_lexer_error
        - njs_parser_reference
        - njs_parser_regexp_literal
        - njs_parser_string_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:977,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:987,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:999,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1011,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1030,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1037,15'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:1048,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1055,15'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.c:1066,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1072,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1085,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1098,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:1108,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1128,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:1137,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1139,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:1149,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1166,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1174,15'
          Dst:             njs_parser_regexp_literal
        - Src:             'src/njs_parser.c:1183,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1196,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1205,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:1216,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1222,12'
          Dst:             njs_parser_reference
        - Src:             'src/njs_parser.c:1234,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_member_expression_next
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2435
      functionLinenumberEnd: 2462
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          182
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser_property
      functionUses:    5
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:2446,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:2444,11'
          Dst:             njs_parser_property
        - Src:             'src/njs_parser.c:2451,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:2460,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_property
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2286
      functionLinenumberEnd: 2370
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          526
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_create_call
        - njs_parser_string_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:2295,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:2297,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2308,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2312,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2316,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:2322,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2330,25'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:2342,13'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2346,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2351,16'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:2362,16'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_member_expression_bracket
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2468
      functionLinenumberEnd: 2476
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_parser_right_link_pop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2473,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2475,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_string_create
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9012
      functionLinenumberEnd: 9036
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          103
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_atom_atomize_key
        - njs_decode_utf8
        - njs_decode_utf8_length
        - njs_string_alloc
        - njs_string_utf8_offset_map_init
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9017,14'
          Dst:             njs_decode_utf8_length
        - Src:             'src/njs_parser.c:9018,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_parser.c:9023,5'
          Dst:             njs_decode_utf8
        - Src:             'src/njs_parser.c:9026,9'
          Dst:             njs_string_utf8_offset_map_init
        - Src:             'src/njs_parser.c:9030,11'
          Dst:             njs_atom_atomize_key
    - functionName:    njs_parser_create_call
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2742
      functionLinenumberEnd: 2778
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          164
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_call_receiver
        - njs_parser_optional_chain_call_this
        - njs_parser_set_call_this
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2745,16'
          Dst:             njs_parser_call_receiver
        - Src:             'src/njs_parser.c:2747,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2758,19'
          Dst:             njs_parser_optional_chain_call_this
        - Src:             'src/njs_parser.c:2768,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2775,5'
          Dst:             njs_parser_set_call_this
    - functionName:    njs_parser_template_literal
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1351
      functionLinenumberEnd: 1407
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          245
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_argument
        - njs_scope_temp_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1355,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1360,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1369,13'
          Dst:             njs_scope_temp_index
        - Src:             'src/njs_parser.c:1375,16'
          Dst:             njs_parser_argument
        - Src:             'src/njs_parser.c:1385,17'
          Dst:             njs_scope_temp_index
    - functionName:    njs_parser_tagged_template_literal_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2276
      functionLinenumberEnd: 2277
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2277,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_argument
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8783
      functionLinenumberEnd: 8798
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          95
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8786,12'
          Dst:             njs_mp_zalloc
    - functionName:    njs_parser_template_literal_string
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1413
      functionLinenumberEnd: 1454
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          259
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser_array_item
        - njs_parser_lexer_error
        - njs_parser_template_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1419,11'
          Dst:             njs_parser_template_string
        - Src:             'src/njs_parser.c:1421,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1426,20'
          Dst:             njs_parser_array_item
        - Src:             'src/njs_parser.c:1430,20'
          Dst:             njs_parser_array_item
        - Src:             'src/njs_parser.c:1440,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:1441,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1443,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:1450,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1452,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_template_string
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8920
      functionLinenumberEnd: 9006
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          296
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - njs_lexer_in_stack_push
        - njs_mp_zalloc
        - njs_parser_escape_string_create
        - njs_parser_string_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:8942,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:8962,23'
          Dst:             njs_lexer_in_stack_push
        - Src:             'src/njs_parser.c:8982,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8990,15'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.c:8996,15'
          Dst:             njs_parser_string_create
    - functionName:    njs_parser_array_item
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8893
      functionLinenumberEnd: 8915
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          151
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_object_property
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8897,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8906,11'
          Dst:             njs_parser_object_property
    - functionName:    njs_parser_template_literal_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1460
      functionLinenumberEnd: 1507
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          185
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_parser_argument
        - njs_parser_array_item
        - njs_parser_lexer_error
        - njs_scope_temp_index
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1469,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1477,16'
          Dst:             njs_parser_argument
        - Src:             'src/njs_parser.c:1485,33'
          Dst:             njs_scope_temp_index
        - Src:             'src/njs_parser.c:1491,15'
          Dst:             njs_parser_array_item
    - functionName:    njs_parser_object_property
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8805
      functionLinenumberEnd: 8845
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          257
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_object_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8809,14'
          Dst:             njs_parser_object_value
        - Src:             'src/njs_parser.c:8816,15'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8825,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8835,12'
          Dst:             njs_mp_zalloc
    - functionName:    njs_parser_object_value
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8762
      functionLinenumberEnd: 8777
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8768,14'
          Dst:             njs_mp_zalloc
    - functionName:    njs_parser_escape_string_create
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9042
      functionLinenumberEnd: 9287
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         107
      ICount:          600
      EdgeCount:       128
      CyclomaticComplexity: 23
      functionsReached:
        - njs_atom_atomize_key
        - njs_number_hex_parse
        - njs_parser_escape_string_calc_length
        - njs_parser_lexer_error
        - njs_string_alloc
        - njs_string_utf8_offset_map_init
        - njs_utf8_decode
        - njs_utf8_encode
      functionUses:    8
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:9079,13'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:9114,21'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:9136,21'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:9051,11'
          Dst:             njs_parser_escape_string_calc_length
        - Src:             'src/njs_parser.c:9056,13'
          Dst:             njs_string_alloc
        - Src:             'src/njs_parser.c:9126,17'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:9148,17'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:9220,14'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_parser.c:9225,15'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_parser.c:9234,14'
          Dst:             njs_number_hex_parse
        - Src:             'src/njs_parser.c:9249,23'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_parser.c:9252,23'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_parser.c:9268,15'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_parser.c:9270,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:9278,9'
          Dst:             njs_string_utf8_offset_map_init
        - Src:             'src/njs_parser.c:9281,11'
          Dst:             njs_atom_atomize_key
    - functionName:    njs_parser_escape_string_calc_length
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9293
      functionLinenumberEnd: 9441
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         91
      ICount:          545
      EdgeCount:       119
      CyclomaticComplexity: 30
      functionsReached:
        - njs_number_hex_parse
        - njs_parser_lexer_error
        - njs_utf8_decode
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:9313,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:9354,18'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_parser.c:9382,14'
          Dst:             njs_number_hex_parse
        - Src:             'src/njs_parser.c:9438,5'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_call_receiver
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2694
      functionLinenumberEnd: 2695
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_property_ref
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2695,12'
          Dst:             njs_parser_property_ref
    - functionName:    njs_parser_optional_chain_call_this
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2848
      functionLinenumberEnd: 2857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_optional_chain_receiver
        - njs_parser_optional_chain_receiver_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2851,16'
          Dst:             njs_parser_optional_chain_receiver
        - Src:             'src/njs_parser.c:2853,16'
          Dst:             njs_parser_optional_chain_receiver_base
    - functionName:    njs_parser_set_call_this
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2863
      functionLinenumberEnd: 2867
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_optional_chain_receiver
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2808
      functionLinenumberEnd: 2822
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          71
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - njs_parser_call_receiver
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2809,9'
          Dst:             njs_parser_call_receiver
        - Src:             'src/njs_parser.c:2816,12'
          Dst:             njs_parser_call_receiver
    - functionName:    njs_parser_optional_chain_receiver_base
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2834
      functionLinenumberEnd: 2835
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_array_literal
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1655
      functionLinenumberEnd: 1661
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_object_literal
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1767
      functionLinenumberEnd: 1784
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          160
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1770,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1782,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_generator_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:763,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:763,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_function_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7461
      functionLinenumberEnd: 7529
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          402
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_scope_begin
        - njs_parser_variable_reference
        - njs_variable_scope_add
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:7468,11'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:7481,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7483,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7496,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7498,26'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7503,11'
          Dst:             njs_variable_scope_add
        - Src:             'src/njs_parser.c:7511,11'
          Dst:             njs_parser_variable_reference
        - Src:             'src/njs_parser.c:7518,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7527,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_class_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 770
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:771,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:771,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_async_generator_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:779,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:779,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_regexp_literal
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1345
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          506
      EdgeCount:       84
      CyclomaticComplexity: 17
      functionsReached:
        - njs_dtoa2
        - njs_parser_lexer_error
        - njs_regexp_flags
        - njs_regexp_pattern_create
        - njs_string_new
        - njs_value_property
        - njs_vm_exception
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:1261,9'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:1276,17'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:1305,21'
          Dst:             njs_regexp_flags
        - Src:             'src/njs_parser.c:1308,17'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1316,23'
          Dst:             njs_regexp_pattern_create
        - Src:             'src/njs_parser.c:1320,26'
          Dst:             njs_vm_exception
        - Src:             'src/njs_parser.c:1321,23'
          Dst:             njs_value_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_parser.c:1327,17'
          Dst:             njs_string_new
        - Src:             'src/njs_parser.c:1329,17'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1342,5'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_close_parenthesis
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 931
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          130
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:928,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:930,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_reference
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8643
      functionLinenumberEnd: 8756
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         89
      ICount:          618
      EdgeCount:       115
      CyclomaticComplexity: 28
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_unexpected_token
        - njs_parser_variable_reference
        - njs_variable_add
        - njs_variable_scope_add
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:8655,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:8650,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8666,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8678,19'
          Dst:             njs_variable_scope_add
        - Src:             'src/njs_parser.c:8688,15'
          Dst:             njs_parser_variable_reference
        - Src:             'src/njs_parser.c:8706,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8713,15'
          Dst:             njs_parser_variable_reference
        - Src:             'src/njs_parser.c:8719,15'
          Dst:             njs_variable_add
        - Src:             'src/njs_parser.c:8741,19'
          Dst:             njs_parser_variable_reference
        - Src:             'src/njs_parser.c:8750,16'
          Dst:             njs_parser_unexpected_token
    - functionName:    njs_parser_variable_reference
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9478
      functionLinenumberEnd: 9507
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          90
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_alloc
        - njs_rbtree_find
        - njs_rbtree_insert
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9490,15'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_parser.c:9495,21'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:9504,5'
          Dst:             njs_rbtree_insert
    - functionName:    njs_parser_unexpected_token
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9513
      functionLinenumberEnd: 9521
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9515,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:9518,9'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_function_parse
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7447
      functionLinenumberEnd: 7453
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          106
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7453,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_function_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7535
      functionLinenumberEnd: 7553
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          196
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7553,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_formal_parameters
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7572
      functionLinenumberEnd: 7653
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          429
      EdgeCount:       56
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_free
        - njs_parser_lexer_error
        - njs_rbtree_find
        - njs_variable_add
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:7580,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:7587,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7589,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7604,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7604,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7607,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7607,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7614,23'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_parser.c:7620,21'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7628,23'
          Dst:             njs_variable_add
        - Src:             'src/njs_parser.c:7643,13'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7649,16'
          Dst:             njs_mp_free
    - functionName:    njs_parser_function_lambda_args_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8190
      functionLinenumberEnd: 8227
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          210
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8195,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8197,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8206,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8208,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8225,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_function_lambda_body_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8233
      functionLinenumberEnd: 8279
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          197
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
        - njs_parser_return_set
        - njs_parser_scope_end
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8263,16'
          Dst:             njs_parser_return_set
        - Src:             'src/njs_parser.c:8274,5'
          Dst:             njs_parser_scope_end
        - Src:             'src/njs_parser.c:8276,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8278,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_return_set
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8581
      functionLinenumberEnd: 8606
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          166
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8584,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8595,12'
          Dst:             njs_mp_zalloc
    - functionName:    njs_parser_scope_end
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_formal_parameters_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7659
      functionLinenumberEnd: 7679
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          120
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7663,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:7669,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7674,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_property_definition_list
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1818
      functionLinenumberEnd: 1821
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          97
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1821,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_object_literal_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1790
      functionLinenumberEnd: 1812
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          162
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1792,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1794,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:1804,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1808,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:1811,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_property_definition
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1948
      functionLinenumberEnd: 2084
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         252
      ICount:          2457
      EdgeCount:       337
      CyclomaticComplexity: 87
      functionsReached:
        - memcmp
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_escape_string_create
        - njs_parser_lexer_error
        - njs_parser_property_definition_ident
        - njs_parser_string_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:1956,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:1958,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:1964,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:1970,20'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:1850,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1856,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1891,20'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1867,20'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:1970,20'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1906,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:1976,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1982,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1986,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:1990,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1990,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1993,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:1999,13'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2003,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2008,20'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:1850,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1856,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1891,20'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1867,20'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:2008,20'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1906,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2015,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:2024,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2033,16'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:2040,20'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:1850,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1856,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1891,20'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1867,20'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:2040,20'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1906,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2047,13'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2054,35'
          Dst:             memcmp
        - Src:             'src/njs_parser.c:2055,38'
          Dst:             memcmp
        - Src:             'src/njs_parser.c:2067,16'
          Dst:             njs_parser_property_definition_ident
        - Src:             'src/njs_parser.c:1850,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1856,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2072,16'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1867,20'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:2082,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_property_definition_list_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1829
      functionLinenumberEnd: 1840
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          168
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1831,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:1834,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1838,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_property_definition_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2090
      functionLinenumberEnd: 2134
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          369
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - memcmp
        - njs_dtoa2
        - njs_mp_free
        - njs_parser_lexer_error
        - njs_parser_object_property
        - njs_string_new
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_parser.c:2106,9'
          Dst:             njs_string_new
        - Src:             'src/njs_parser.c:2108,13'
          Dst:             memcmp
        - Src:             'src/njs_parser.c:2110,17'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2125,11'
          Dst:             njs_parser_object_property
        - Src:             'src/njs_parser.c:2133,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_computed_property_name_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2140
      functionLinenumberEnd: 2141
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_computed_property_name_handler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2141,12'
          Dst:             njs_parser_computed_property_name_handler
    - functionName:    njs_parser_computed_property_async_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2148
      functionLinenumberEnd: 2149
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_computed_property_name_handler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2149,12'
          Dst:             njs_parser_computed_property_name_handler
    - functionName:    njs_parser_get_set
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7965
      functionLinenumberEnd: 8039
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         76
      ICount:          762
      EdgeCount:       99
      CyclomaticComplexity: 25
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_escape_string_create
        - njs_parser_property_definition_ident
        - njs_parser_string_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:7980,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:7975,13'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:7989,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7993,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:8001,16'
          Dst:             njs_parser_property_definition_ident
        - Src:             'src/njs_parser.c:1850,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1856,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8004,16'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1867,20'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:8009,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8011,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8020,18'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8031,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8035,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:8038,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_property_definition_ident
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1914
      functionLinenumberEnd: 1942
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          210
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_reference
        - njs_parser_string_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1915,19'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:1922,20'
          Dst:             njs_parser_reference
        - Src:             'src/njs_parser.c:1927,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1929,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:1936,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:1936,16'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_method_definition
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7902
      functionLinenumberEnd: 7959
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          245
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:7920,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:7910,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7912,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7935,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7937,12'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7946,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7955,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_function_lambda
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8156
      functionLinenumberEnd: 8184
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          184
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_scope_begin
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8161,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8169,11'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:8182,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_unique_formal_parameters
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7560
      functionLinenumberEnd: 7565
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_get_set_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8045
      functionLinenumberEnd: 8086
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          322
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8053,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8055,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:8064,18'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8078,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8082,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:8085,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_get_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8092
      functionLinenumberEnd: 8118
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          134
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
        - njs_parser_lexer_error
        - njs_parser_property_accessor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8103,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8108,11'
          Dst:             njs_parser_property_accessor
        - Src:             'src/njs_parser.c:8117,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_set_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8124
      functionLinenumberEnd: 8150
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          134
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
        - njs_parser_lexer_error
        - njs_parser_property_accessor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8135,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8140,11'
          Dst:             njs_parser_property_accessor
        - Src:             'src/njs_parser.c:8149,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_property_accessor
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8852
      functionLinenumberEnd: 8887
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          241
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_object_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8855,14'
          Dst:             njs_parser_object_value
        - Src:             'src/njs_parser.c:8860,15'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8868,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8877,12'
          Dst:             njs_mp_zalloc
    - functionName:    njs_parser_computed_property_name_handler
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2156
      functionLinenumberEnd: 2205
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         70
      ICount:          720
      EdgeCount:       94
      CyclomaticComplexity: 26
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_escape_string_create
        - njs_parser_string_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2164,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2166,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:2182,16'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:1850,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1856,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1891,20'
          Dst:             njs_parser_escape_string_create
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:1867,20'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:2182,16'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1906,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2188,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2197,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2200,16'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_array_element_list
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1668
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          215
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:1673,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:1675,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1679,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:1682,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1708,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_array_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1715
      functionLinenumberEnd: 1742
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          114
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_parser_array_item
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:1727,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:1722,11'
          Dst:             njs_parser_array_item
        - Src:             'src/njs_parser.c:1729,9'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_member_expression_new_next
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2482
      functionLinenumberEnd: 2518
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          185
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_alloc
        - njs_parser_lexer_error
        - njs_parser_primary_expression_test
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:2492,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:2496,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2496,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2501,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2501,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:2504,15'
          Dst:             njs_parser_primary_expression_test
        - Src:             'src/njs_parser.c:2515,16'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_member_expression_new_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2624
      functionLinenumberEnd: 2645
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          133
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_free
        - njs_parser_call_arguments
        - njs_parser_create_call
        - njs_parser_member_expression_new_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2628,24'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:2635,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:2638,12'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:2643,12'
          Dst:             njs_parser_call_arguments
        - Src:             'src/njs_parser.c:2643,12'
          Dst:             njs_parser_member_expression_new_args
    - functionName:    njs_parser_member_expression_new_args
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2651
      functionLinenumberEnd: 2654
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          75
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2654,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_call_arguments
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2785
      functionLinenumberEnd: 2792
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          114
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2789,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2792,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_arguments
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3066
      functionLinenumberEnd: 3082
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          165
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3074,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3075,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3080,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_argument_list
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3118
      functionLinenumberEnd: 3134
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          97
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3134,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_parenthesis_or_comma
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3088
      functionLinenumberEnd: 3112
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          218
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3090,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3091,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3098,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3100,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:3109,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3111,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_argument_list_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3142
      functionLinenumberEnd: 3178
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          269
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_argument_list
        - njs_scope_temp_index
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3145,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3150,19'
          Dst:             njs_scope_temp_index
        - Src:             'src/njs_parser.c:3163,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3165,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:3171,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3174,16'
          Dst:             njs_parser_argument_list
        - Src:             'src/njs_parser.c:3177,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_call_expression_args
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2983
      functionLinenumberEnd: 2997
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          69
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_parser_call_arguments
        - njs_parser_create_call
        - njs_parser_left_hand_side_expression_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2990,12'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:2995,12'
          Dst:             njs_parser_call_arguments
        - Src:             'src/njs_parser.c:2995,12'
          Dst:             njs_parser_left_hand_side_expression_node
    - functionName:    njs_parser_call_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3050
      functionLinenumberEnd: 3058
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_call_expression_after
        - njs_parser_call_or_property_after
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3058,12'
          Dst:             njs_parser_call_or_property_after
        - Src:             'src/njs_parser.c:3058,12'
          Dst:             njs_parser_call_expression_after
    - functionName:    njs_parser_call_or_property_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3004
      functionLinenumberEnd: 3044
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          229
      EdgeCount:       20
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser_call_arguments
        - njs_parser_create_call
        - njs_parser_left_hand_side_expression_node
        - njs_parser_property
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3008,5'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:3026,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3010,16'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:3015,15'
          Dst:             njs_parser_call_arguments
        - Src:             'src/njs_parser.c:3015,15'
          Dst:             njs_parser_left_hand_side_expression_node
        - Src:             'src/njs_parser.c:3024,15'
          Dst:             njs_parser_property
        - Src:             'src/njs_parser.c:3031,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3043,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_left_hand_side_expression_node
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3527
      functionLinenumberEnd: 3530
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          75
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3530,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_left_hand_side_expression_optional
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3537
      functionLinenumberEnd: 3547
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          44
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_optional_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3192
      functionLinenumberEnd: 3237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          410
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_optional_chain_preserve
        - njs_parser_set_optional_chain_preserve
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3197,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3200,13'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:3206,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:3209,11'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3218,11'
          Dst:             njs_parser_optional_chain_preserve
        - Src:             'src/njs_parser.c:3224,5'
          Dst:             njs_parser_set_optional_chain_preserve
        - Src:             'src/njs_parser.c:3229,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3235,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_optional_chain_preserve
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2702
      functionLinenumberEnd: 2714
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2705,11'
          Dst:             njs_mp_zalloc
    - functionName:    njs_parser_set_optional_chain_preserve
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2720
      functionLinenumberEnd: 2725
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_optional_chain
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3243
      functionLinenumberEnd: 3350
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          690
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_call_arguments
        - njs_parser_left_hand_side_expression_node
        - njs_parser_optional_chain_call
        - njs_parser_optional_chain_source
        - njs_parser_string_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:3274,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:3257,13'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:3267,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3269,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:3277,47'
          Dst:             njs_parser_optional_chain_source
        - Src:             'src/njs_parser.c:3276,16'
          Dst:             njs_parser_optional_chain_call
        - Src:             'src/njs_parser.c:3284,15'
          Dst:             njs_parser_call_arguments
        - Src:             'src/njs_parser.c:3284,15'
          Dst:             njs_parser_left_hand_side_expression_node
        - Src:             'src/njs_parser.c:3290,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3294,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3305,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:3309,15'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3315,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:3323,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.h:205,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:3331,21'
          Dst:             njs_parser_string_create
        - Src:             'src/njs_parser.c:3344,9'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_optional_chain_wrap
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3184
      functionLinenumberEnd: 3185
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3185,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_optional_chain_source
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2730
      functionLinenumberEnd: 2736
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_optional_chain_call
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2927
      functionLinenumberEnd: 2936
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_create_call
        - njs_parser_optional_chain_method_call
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2930,12'
          Dst:             njs_parser_optional_chain_method_call
        - Src:             'src/njs_parser.c:2935,12'
          Dst:             njs_parser_create_call
    - functionName:    njs_parser_optional_chain_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3356
      functionLinenumberEnd: 3364
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_call_or_property_after
        - njs_parser_optional_chain_after
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3364,12'
          Dst:             njs_parser_call_or_property_after
        - Src:             'src/njs_parser.c:3364,12'
          Dst:             njs_parser_optional_chain_after
    - functionName:    njs_parser_optional_chain_method_call
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2895
      functionLinenumberEnd: 2921
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          120
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_create_call
        - njs_parser_optional_chain_receiver
        - njs_parser_optional_chain_receiver_base
        - njs_parser_optional_chain_receiver_key
        - njs_parser_optional_chain_receiver_operation
        - njs_parser_set_optional_method_call_preserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2898,11'
          Dst:             njs_parser_optional_chain_receiver
        - Src:             'src/njs_parser.c:2903,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2908,25'
          Dst:             njs_parser_optional_chain_receiver_operation
        - Src:             'src/njs_parser.c:2910,18'
          Dst:             njs_parser_optional_chain_receiver_base
        - Src:             'src/njs_parser.c:2911,19'
          Dst:             njs_parser_optional_chain_receiver_key
        - Src:             'src/njs_parser.c:2913,12'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:2918,5'
          Dst:             njs_parser_set_optional_method_call_preserve
    - functionName:    njs_parser_optional_chain_receiver_operation
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2827
      functionLinenumberEnd: 2828
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_optional_chain_receiver_key
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2841
      functionLinenumberEnd: 2842
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_set_optional_method_call_preserve
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2873
      functionLinenumberEnd: 2878
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_new_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3391
      functionLinenumberEnd: 3408
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          120
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
        - njs_parser_create_call
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3399,12'
          Dst:             njs_parser_create_call
        - Src:             'src/njs_parser.c:3407,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_await_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3908
      functionLinenumberEnd: 3914
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:3913,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_logical_AND_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4389
      functionLinenumberEnd: 4392
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4392,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_logical_OR_expression_or
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4424
      functionLinenumberEnd: 4427
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_expression_node
        - njs_parser_logical_OR_expression_or
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4427,12'
          Dst:             njs_parser_expression_node
        - Src:             'src/njs_parser.c:4427,12'
          Dst:             njs_parser_logical_OR_expression_or
    - functionName:    njs_parser_logical_AND_expression_and
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4400
      functionLinenumberEnd: 4403
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_expression_node
        - njs_parser_logical_AND_expression_and
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:4403,12'
          Dst:             njs_parser_expression_node
        - Src:             'src/njs_parser.c:4403,12'
          Dst:             njs_parser_logical_AND_expression_and
    - functionName:    njs_parser_arrow_function_args_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7802
      functionLinenumberEnd: 7825
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          157
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_lexer_consume_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7809,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_arrow_function_arrow
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7831
      functionLinenumberEnd: 7873
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          276
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7836,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7838,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7844,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7846,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7863,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:7871,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_arrow_function_body_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7879
      functionLinenumberEnd: 7893
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          105
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
        - njs_parser_return_set
        - njs_parser_scope_end
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7882,12'
          Dst:             njs_parser_return_set
        - Src:             'src/njs_parser.c:7890,5'
          Dst:             njs_parser_scope_end
        - Src:             'src/njs_parser.c:7892,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_catch_or_finally
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7116
      functionLinenumberEnd: 7223
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          522
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_scope_begin
        - njs_parser_variable_node
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:7125,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7139,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7142,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:7146,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7150,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:7157,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7159,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7164,11'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:7178,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7178,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7186,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7188,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7196,16'
          Dst:             njs_parser_variable_node
        - Src:             'src/njs_parser.c:7206,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7222,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7222,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_variable_node
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8612
      functionLinenumberEnd: 8638
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          136
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_variable_reference
        - njs_variable_add
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8617,11'
          Dst:             njs_variable_add
        - Src:             'src/njs_parser.c:8626,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:8631,11'
          Dst:             njs_parser_variable_reference
    - functionName:    njs_parser_catch_parenthesis
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7265
      functionLinenumberEnd: 7279
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          143
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7270,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7277,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_catch_statement_open_brace
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7285
      functionLinenumberEnd: 7315
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          180
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7294,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7296,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7313,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_throw_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7074
      functionLinenumberEnd: 7085
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          215
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_consume_token
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7080,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7084,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_return_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6649
      functionLinenumberEnd: 6661
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          127
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_parser_lexer_error
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6651,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6656,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6660,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_break_continue
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6531
      functionLinenumberEnd: 6583
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          449
      EdgeCount:       45
      CyclomaticComplexity: 10
      functionsReached:
        - njs_label_find
        - njs_lexer_consume_token
        - njs_mp_free
        - njs_mp_zalloc
        - njs_name_copy
        - njs_parser_lexer_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6541,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6534,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6551,24'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:6554,17'
          Dst:             njs_label_find
        - Src:             'src/njs_parser.c:6557,17'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6562,19'
          Dst:             njs_name_copy
        - Src:             'src/njs_parser.c:6577,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:6580,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6582,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_expression_parenthesis
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          130
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:942,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:948,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_switch_block
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6718
      functionLinenumberEnd: 6738
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          148
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_parser_scope_begin
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6725,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6729,11'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:6736,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_switch_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6708
      functionLinenumberEnd: 6711
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          75
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6711,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_switch_case
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6753
      functionLinenumberEnd: 6754
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_switch_case_def
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6754,12'
          Dst:             njs_parser_switch_case_def
    - functionName:    njs_parser_switch_block_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6743
      functionLinenumberEnd: 6746
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
        - njs_parser_scope_end
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6744,5'
          Dst:             njs_parser_scope_end
        - Src:             'src/njs_parser.c:6746,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_switch_case_def
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6769
      functionLinenumberEnd: 6842
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          473
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6779,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6772,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6781,18'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6791,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6801,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6805,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6811,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6828,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6834,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6835,16'
          Dst:             njs_mp_free
    - functionName:    njs_parser_switch_case_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6848
      functionLinenumberEnd: 6877
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          185
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6863,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6853,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6858,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:6875,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_switch_case_after_wo_def
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6899
      functionLinenumberEnd: 6931
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          200
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6917,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6904,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6912,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:6929,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_switch_case_block_wo_def
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6937
      functionLinenumberEnd: 6952
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          98
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_switch_case_wo_def
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6761
      functionLinenumberEnd: 6762
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_switch_case_def
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6762,12'
          Dst:             njs_parser_switch_case_def
    - functionName:    njs_parser_switch_case_block
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6883
      functionLinenumberEnd: 6893
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          75
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_iteration_statement_for_map
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5977
      functionLinenumberEnd: 6106
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          541
      EdgeCount:       58
      CyclomaticComplexity: 15
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_parser_for_var_binding_or_var_list
        - njs_parser_match_arrow_expression
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6000,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6002,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:6008,13'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6014,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6021,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6031,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:6036,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6038,15'
          Dst:             njs_parser_for_var_binding_or_var_list
        - Src:             'src/njs_parser.c:6056,15'
          Dst:             njs_parser_match_arrow_expression
        - Src:             'src/njs_parser.c:6073,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6080,15'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6086,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6097,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6104,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_iteration_statement_for_end
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 956
      functionLinenumberEnd: 962
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          84
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
        - njs_parser_scope_end
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:960,5'
          Dst:             njs_parser_scope_end
        - Src:             'src/njs_parser.c:962,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_for_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6414
      functionLinenumberEnd: 6463
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          331
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6421,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6423,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6428,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6433,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6446,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:6461,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_for_var_binding_or_var_list
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6113
      functionLinenumberEnd: 6211
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          520
      EdgeCount:       65
      CyclomaticComplexity: 14
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_in_fail_set
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_variable_node
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6119,5'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:6133,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6146,17'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6151,20'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:6159,17'
          Dst:             njs_lexer_in_fail_set
        - Src:             'src/njs_parser.c:6165,25'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6170,25'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6175,19'
          Dst:             njs_parser_variable_node
        - Src:             'src/njs_parser.c:6187,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6197,19'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6203,13'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_for_expression_map_reparse
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5807
      functionLinenumberEnd: 5821
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          136
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_in_fail_set
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5813,9'
          Dst:             njs_lexer_in_fail_set
        - Src:             'src/njs_parser.c:5820,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_for_expression_map_continue
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5827
      functionLinenumberEnd: 5893
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          361
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_in_fail_set
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_parser_lvalue_ref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5833,9'
          Dst:             njs_lexer_in_fail_set
        - Src:             'src/njs_parser.c:5844,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5851,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5861,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5864,13'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:5869,24'
          Dst:             njs_parser_lvalue_ref
        - Src:             'src/njs_parser.c:5876,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5886,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5890,16'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_for_var_in_of_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6257
      functionLinenumberEnd: 6336
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          360
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_in_fail_set
        - njs_lexer_peek_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser_lexer_error
        - njs_parser_lvalue_ref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:6302,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:6277,13'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6280,13'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:6285,16'
          Dst:             njs_parser_lvalue_ref
        - Src:             'src/njs_parser.c:6299,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:6304,9'
          Dst:             njs_lexer_in_fail_set
        - Src:             'src/njs_parser.c:6306,17'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:6315,13'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6319,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:6325,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6331,16'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:6331,16'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_for_in_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6342
      functionLinenumberEnd: 6370
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          216
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6349,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6357,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6368,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_for_in_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6406
      functionLinenumberEnd: 6407
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_right_link_pop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6407,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_expression_continue_op
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5941
      functionLinenumberEnd: 5956
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          189
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5944,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5953,16'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_for_in_statement_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6376
      functionLinenumberEnd: 6400
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          204
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6383,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6387,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6398,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_expression_continue_assign_comma
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5962
      functionLinenumberEnd: 5971
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          123
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5969,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_comma_expression_comma
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5907
      functionLinenumberEnd: 5935
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          272
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5917,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:5920,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5930,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5934,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_after_expr
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5899
      functionLinenumberEnd: 5900
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5900,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_object_binding_pattern
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5478
      functionLinenumberEnd: 5479
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5479,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5479,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_array_binding_pattern
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5486
      functionLinenumberEnd: 5487
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5487,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5487,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_variable_declaration_list
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5335
      functionLinenumberEnd: 5338
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5338,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_for_var_in_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6217
      functionLinenumberEnd: 6231
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          141
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6222,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6229,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_for_var_in_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6237
      functionLinenumberEnd: 6251
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          140
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6240,15'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:6250,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_variable_declaration
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5373
      functionLinenumberEnd: 5450
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          361
      EdgeCount:       49
      CyclomaticComplexity: 11
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_parser_binding_pattern
        - njs_parser_initializer_assign
        - njs_parser_lexer_error
        - njs_parser_variable_node
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:5417,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:5379,11'
          Dst:             njs_parser_binding_pattern
        - Src:             'src/njs_parser.c:5381,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5390,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:5395,12'
          Dst:             njs_parser_variable_node
        - Src:             'src/njs_parser.c:5410,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5412,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:5431,11'
          Dst:             njs_parser_initializer_assign
    - functionName:    njs_parser_variable_declaration_list_next
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5346
      functionLinenumberEnd: 5367
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          195
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5354,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:5357,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5365,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_binding_pattern
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5459
      functionLinenumberEnd: 5473
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5470,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_initializer
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2211
      functionLinenumberEnd: 2228
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          136
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2218,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2226,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_initializer_assign
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2257,14'
          Dst:             njs_mp_zalloc
    - functionName:    njs_parser_initializer_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2234
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          145
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2237,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:2248,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_for_expression_end
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6469
      functionLinenumberEnd: 6488
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          148
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6476,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:6486,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_for_end
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6494
      functionLinenumberEnd: 6502
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          90
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:6502,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_while_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5753
      functionLinenumberEnd: 5759
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          108
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5759,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_while_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5767
      functionLinenumberEnd: 5771
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          83
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5771,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_iteration_statement_do_while
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5706
      functionLinenumberEnd: 5719
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          138
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5713,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5717,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_do_while_semicolon
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5725
      functionLinenumberEnd: 5726
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5726,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_if_close_parenthesis
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5622
      functionLinenumberEnd: 5633
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          116
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5627,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5632,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_else_statement
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5639
      functionLinenumberEnd: 5666
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          253
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5646,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:5656,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5659,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:5665,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_else_statement_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5672
      functionLinenumberEnd: 5677
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          85
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5677,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_semicolon
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 893
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          162
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:894,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:898,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_module
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8402
      functionLinenumberEnd: 8435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          103
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_module_find
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8409,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8413,14'
          Dst:             njs_module_find
        - Src:             'src/njs_parser.c:8419,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:8426,13'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_export_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8391
      functionLinenumberEnd: 8397
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          112
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_parser_right_link_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8392,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:8396,12'
          Dst:             njs_parser_right_link_pop
    - functionName:    njs_parser_hoistable_declaration
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5141
      functionLinenumberEnd: 5155
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_parser_async_function_or_generator
        - njs_parser_function_or_generator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5144,11'
          Dst:             njs_parser_function_or_generator
        - Src:             'src/njs_parser.c:5149,11'
          Dst:             njs_parser_async_function_or_generator
    - functionName:    njs_parser_class_declaration
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 795
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:795,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:795,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_lexical_declaration
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5305
      functionLinenumberEnd: 5313
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          108
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:5309,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:5313,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_function_or_generator
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 838
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_function_or_generator_handler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:843,12'
          Dst:             njs_parser_function_or_generator_handler
    - functionName:    njs_parser_async_function_or_generator
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_peek_token
        - njs_parser_function_or_generator_handler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:855,13'
          Dst:             njs_lexer_peek_token
        - Src:             'src/njs_parser.c:864,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:866,12'
          Dst:             njs_parser_function_or_generator_handler
    - functionName:    njs_parser_function_or_generator_handler
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 802
      functionLinenumberEnd: 832
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          239
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:808,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:813,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:816,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:826,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:830,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_generator_declaration
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:787,12'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:787,12'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser_function_declaration
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7362
      functionLinenumberEnd: 7418
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          350
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_parser_lexer_error
        - njs_parser_scope_begin
        - njs_variable_function_add
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_lexer.h:331,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:7374,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_parser.c:7382,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7384,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:7393,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:7395,11'
          Dst:             njs_variable_function_add
        - Src:             'src/njs_parser.c:7406,11'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:7416,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_parser_function_declaration_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7424
      functionLinenumberEnd: 7441
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          116
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
        - njs_parser_variable_reference
        - njs_value_null_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:7432,5'
          Dst:             njs_value_null_set
        - Src:             'src/njs_parser.c:7434,11'
          Dst:             njs_parser_variable_reference
        - Src:             'src/njs_parser.c:7440,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_scope_rbtree_compare
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_parser_cover_parenthesized_expression_end
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1638
      functionLinenumberEnd: 1646
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          105
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1643,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1645,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_cover_parenthesized_expression_after
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1590
      functionLinenumberEnd: 1632
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          185
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1606,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1608,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:1621,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1629,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1631,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_binding_identifier_pattern
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1541
      functionLinenumberEnd: 1584
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          238
      EdgeCount:       18
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:1547,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:1566,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1567,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:1573,9'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1574,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:1581,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_array_spread_element
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1748
      functionLinenumberEnd: 1758
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          122
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:1753,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:1757,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_cover_parenthesized_expression
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1513
      functionLinenumberEnd: 1535
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          181
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:1514,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:1516,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_parser.c:1528,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:1532,5'
          Dst:             njs_lexer_consume_token
    - functionName:    njs_parser_close_bracked
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 905
      functionLinenumberEnd: 913
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          105
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_lexer_consume_token
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:910,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:912,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_member_expression_import
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2561
      functionLinenumberEnd: 2584
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          147
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2570,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2572,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:2581,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2583,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_super_property
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2524
      functionLinenumberEnd: 2555
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          256
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_lexer_consume_token
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:2535,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:2543,5'
          Dst:             njs_lexer_consume_token
        - Src:             'src/njs_parser.c:2545,13'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:2554,12'
          Dst:             njs_mp_free
    - functionName:    njs_parser_serialize_tree
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9678
      functionLinenumberEnd: 9744
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          308
      EdgeCount:       47
      CyclomaticComplexity: 8
      functionsReached:
        - njs_chb_append0
        - njs_chb_sprintf
        - njs_parser_serialize_node
        - njs_parser_serialize_tree
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_parser.c:9689,5'
          Branch Sides:    []
        - Branch String:   'src/njs_parser.c:9698,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_parser.c:9681,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9683,13'
          Dst:             njs_parser_serialize_node
        - Src:             'src/njs_parser.c:9685,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9686,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9687,5'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_parser.c:9694,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9695,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9696,9'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_parser.c:9701,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9702,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9705,17'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_parser.c:9710,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9711,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9712,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9728,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9729,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9730,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9732,9'
          Dst:             njs_parser_serialize_tree
        - Src:             'src/njs_parser.c:9736,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9737,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9738,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_parser.c:9740,9'
          Dst:             njs_parser_serialize_tree
        - Src:             'src/njs_parser.c:9743,5'
          Dst:             njs_chb_append0
    - functionName:    njs_parser_serialize_ast
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9652
      functionLinenumberEnd: 9660
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_chb_append0
        - njs_parser_serialize_tree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9657,5'
          Dst:             njs_parser_serialize_tree
        - Src:             'src/njs_parser.c:9658,5'
          Dst:             njs_chb_append0
    - functionName:    njs_parser_traverse
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9584
      functionLinenumberEnd: 9647
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          195
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_arr_add
        - njs_arr_create
        - njs_arr_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9593,13'
          Dst:             njs_arr_create
        - Src:             'src/njs_parser.c:9599,11'
          Dst:             njs_arr_add
        - Src:             'src/njs_parser.c:9620,19'
          Dst:             njs_arr_add
        - Src:             'src/njs_parser.c:9629,19'
          Dst:             njs_arr_add
        - Src:             'src/njs_parser.c:9638,5'
          Dst:             njs_arr_destroy
        - Src:             'src/njs_parser.c:9644,5'
          Dst:             njs_arr_destroy
    - functionName:    njs_parser_node_error
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9572
      functionLinenumberEnd: 9578
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_parser_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9576,5'
          Dst:             njs_parser_error
    - functionName:    njs_parser_has_side_effect
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9446
      functionLinenumberEnd: 9472
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          100
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_parser_has_side_effect
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:9465,19'
          Dst:             njs_parser_has_side_effect
        - Src:             'src/njs_parser.c:9468,16'
          Dst:             njs_parser_has_side_effect
    - functionName:    njs_parser_export_sink
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8527
      functionLinenumberEnd: 8576
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          186
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - njs_parser_lexer_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:8545,9'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_parser
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          410
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - njs_lexer_token
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_parser_export_sink
        - njs_parser_scope_begin
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:592,15'
          Dst:             njs_parser_scope_begin
        - Src:             'src/njs_parser.c:610,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_parser.c:617,17'
          Dst:             njs_lexer_token
        - Src:             'src/njs_parser.c:638,24'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_parser.c:645,15'
          Dst:             njs_parser_export_sink
    - functionName:    njs_parser_init
      functionSourceFile: '/src/njs/src/njs_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_lexer_init
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_parser.c:577,12'
          Dst:             njs_lexer_init
    - functionName:    njs_variable_scope
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - njs_rbtree_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:123,16'
          Dst:             njs_rbtree_find
    - functionName:    njs_name_copy
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:604,18'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_variable.c:612,5'
          Dst:             njs_memory_error
    - functionName:    njs_label_find
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_rbtree_find
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:567,16'
          Dst:             njs_rbtree_find
    - functionName:    njs_variable_closure
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          330
      EdgeCount:       63
      CyclomaticComplexity: 18
      functionsReached:
        - njs_arr_add
        - njs_mp_alloc
        - njs_rbtree_find
        - njs_rbtree_insert
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:428,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_variable.c:447,19'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_variable.c:471,19'
          Dst:             njs_arr_add
        - Src:             'src/njs_variable.c:481,30'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_variable.c:489,17'
          Dst:             njs_rbtree_insert
    - functionName:    njs_variable_reference
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          184
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_rbtree_find
        - njs_variable_closure
        - njs_variable_closure_test
        - njs_variable_resolve
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:515,25'
          Dst:             njs_variable_resolve
        - Src:             'src/njs_variable.c:523,15'
          Dst:             njs_variable_closure_test
        - Src:             'src/njs_variable.c:528,15'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_variable.c:549,19'
          Dst:             njs_variable_closure
    - functionName:    njs_variable_resolve
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_rbtree_find
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:396,19'
          Dst:             njs_rbtree_find
    - functionName:    njs_variable_closure_test
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          50
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_label_remove
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
        - njs_rbtree_delete
        - njs_rbtree_find
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:349,12'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_variable.c:351,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_variable.c:355,5'
          Dst:             njs_rbtree_delete
        - Src:             'src/njs_variable.c:356,5'
          Dst:             njs_mp_free
    - functionName:    njs_label_add
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          121
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_memory_error
        - njs_mp_zalloc
        - njs_rbtree_find
        - njs_rbtree_insert
        - njs_variable_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:313,12'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_variable.c:319,13'
          Dst:             njs_variable_alloc
        - Src:             'src/njs_variable.c:324,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_variable.c:329,5'
          Dst:             njs_rbtree_insert
        - Src:             'src/njs_variable.c:335,5'
          Dst:             njs_memory_error
    - functionName:    njs_variable_alloc
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_zalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:586,11'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_variable.c:588,9'
          Dst:             njs_memory_error
    - functionName:    njs_variable_scope_function_add
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_arr_add
        - njs_arr_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:99,31'
          Dst:             njs_arr_create
        - Src:             'src/njs_variable.c:106,12'
          Dst:             njs_arr_add
    - functionName:    njs_variable_function_add
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          288
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - njs_mp_zalloc
        - njs_parser_lexer_error
        - njs_variable_scope_add
        - njs_variable_scope_find
        - njs_variable_scope_function_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:47,12'
          Dst:             njs_variable_scope_find
        - Src:             'src/njs_variable.c:50,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_variable.c:54,11'
          Dst:             njs_variable_scope_add
        - Src:             'src/njs_variable.c:67,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_variable.c:75,13'
          Dst:             njs_variable_scope_function_add
    - functionName:    njs_variable_scope_find
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         104
      ICount:          704
      EdgeCount:       138
      CyclomaticComplexity: 36
      functionsReached:
        - njs_dtoa2
        - njs_parser_lexer_error
        - njs_string_new
        - njs_symbol_descriptive_string
        - njs_value_to_string
        - njs_variable_scope
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_variable.c:162,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_variable.c:157,12'
          Dst:             njs_variable_scope
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_variable.c:244,5'
          Dst:             njs_parser_lexer_error
    - functionName:    njs_variable_scope_add
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          284
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - njs_memory_error
        - njs_mp_zalloc
        - njs_rbtree_find
        - njs_rbtree_insert
        - njs_variable_alloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:261,12'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_variable.c:267,11'
          Dst:             njs_variable_alloc
        - Src:             'src/njs_variable.c:287,20'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_variable.c:292,5'
          Dst:             njs_rbtree_insert
        - Src:             'src/njs_variable.c:298,5'
          Dst:             njs_memory_error
    - functionName:    njs_variable_add
      functionSourceFile: '/src/njs/src/njs_variable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_parser_lexer_error
        - njs_variable_scope_add
        - njs_variable_scope_find
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_variable.c:26,12'
          Dst:             njs_variable_scope_find
        - Src:             'src/njs_variable.c:28,9'
          Dst:             njs_parser_lexer_error
        - Src:             'src/njs_variable.c:32,12'
          Dst:             njs_variable_scope_add
    - functionName:    njs_scope_values_hash_test
      functionSourceFile: '/src/njs/src/njs_scope.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_scope.c:123,12'
          Dst:             memcmp
    - functionName:    njs_scope_value_get
      functionSourceFile: '/src/njs/src/njs_scope.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          35
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_scope_value_index
      functionSourceFile: '/src/njs/src/njs_scope.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          315
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - njs_djb_hash
        - njs_flathsh_find
        - njs_flathsh_insert
        - njs_mp_align
        - njs_string_data_init
        - njs_string_data_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_scope.c:181,20'
          Dst:             njs_djb_hash
        - Src:             'src/njs_scope.c:186,9'
          Dst:             njs_flathsh_find
        - Src:             'src/njs_scope.c:191,27'
          Dst:             njs_flathsh_find
        - Src:             'src/njs_scope.c:201,29'
          Dst:             njs_string_data_size
        - Src:             'src/njs_scope.c:206,17'
          Dst:             njs_mp_align
        - Src:             'src/njs_scope.c:219,13'
          Dst:             njs_string_data_init
        - Src:             'src/njs_scope.c:232,15'
          Dst:             njs_flathsh_insert
    - functionName:    njs_scope_global_index
      functionSourceFile: '/src/njs/src/njs_scope.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          180
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - njs_arr_add
        - njs_arr_create
        - njs_scope_value_index
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_scope.c:63,13'
          Dst:             njs_scope_value_index
        - Src:             'src/njs_scope.c:73,30'
          Dst:             njs_arr_create
        - Src:             'src/njs_scope.c:82,14'
          Dst:             njs_arr_add
    - functionName:    njs_scope_make
      functionSourceFile: '/src/njs/src/njs_scope.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_scope.c:36,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_scope.c:38,9'
          Dst:             njs_memory_error
    - functionName:    njs_scope_temp_index
      functionSourceFile: '/src/njs/src/njs_scope.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_await_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6244
      functionLinenumberEnd: 6260
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          169
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6254,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6254,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6259,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:6259,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_reserve
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 950
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          168
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    103
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:969,9'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:971,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_generator.c:980,5'
          Dst:             njs_mp_free
    - functionName:    njs_generate_code_map
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          134
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_arr_add
      functionUses:    102
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1001,20'
          Dst:             njs_arr_add
    - functionName:    njs_generate_export_statement_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6214
      functionLinenumberEnd: 6226
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          157
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6220,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6220,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6225,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:6225,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_throw_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6161
      functionLinenumberEnd: 6171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          155
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6164,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6164,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6170,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:6170,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_try_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6051
      functionLinenumberEnd: 6144
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          425
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - njs_generate_code_map
        - njs_generate_find_block
        - njs_generate_index_release
        - njs_generate_jump_destination
        - njs_generate_make_continuation_patch
        - njs_generate_make_exit_patch
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6066,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6066,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6072,22'
          Dst:             njs_generate_jump_destination
        - Src:             'src/njs_generator.c:6085,17'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:6088,17'
          Dst:             njs_generate_make_continuation_patch
        - Src:             'src/njs_generator.c:6099,22'
          Dst:             njs_generate_jump_destination
        - Src:             'src/njs_generator.c:6113,17'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:6116,21'
          Dst:             njs_generate_make_exit_patch
        - Src:             'src/njs_generator.c:6125,21'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:6128,25'
          Dst:             njs_generate_make_exit_patch
        - Src:             'src/njs_generator.c:6138,11'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:6143,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:6143,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_jump_destination
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2863
      functionLinenumberEnd: 2887
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          81
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_lookup_block
        - njs_throw_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2874,14'
          Dst:             njs_generate_lookup_block
        - Src:             'src/njs_generator.c:2875,14'
          Dst:             njs_generate_lookup_block
        - Src:             'src/njs_generator.c:2878,9'
          Dst:             njs_throw_error
    - functionName:    njs_generate_find_block
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2705
      functionLinenumberEnd: 2749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          101
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_generate_lookup_block
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2719,18'
          Dst:             njs_generate_lookup_block
    - functionName:    njs_generate_make_continuation_patch
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2755
      functionLinenumberEnd: 2776
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2758,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2760,9'
          Dst:             njs_memory_error
    - functionName:    njs_generate_make_exit_patch
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2817
      functionLinenumberEnd: 2837
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2820,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2822,9'
          Dst:             njs_memory_error
    - functionName:    njs_generate_index_release
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6502
      functionLinenumberEnd: 6526
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          80
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_arr_add
        - njs_arr_create
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6511,17'
          Dst:             njs_arr_create
        - Src:             'src/njs_generator.c:6519,12'
          Dst:             njs_arr_add
    - functionName:    njs_generate_lookup_block
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2682
      functionLinenumberEnd: 2699
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          126
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2683,9'
          Dst:             memcmp
        - Src:             'src/njs_generator.c:2690,39'
          Dst:             memcmp
    - functionName:    njs_generate_try_finally
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5966
      functionLinenumberEnd: 6045
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          496
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - njs_generate_code_map
        - njs_generate_patch_block
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5981,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5981,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5988,9'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:5991,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5991,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6005,9'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:6008,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6008,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6032,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6032,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6042,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:6042,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_patch_block
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2801
      functionLinenumberEnd: 2811
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_patch
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2804,9'
          Dst:             njs_generate_patch
        - Src:             'src/njs_generator.c:2809,9'
          Dst:             njs_generate_patch
    - functionName:    njs_generate
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         141
      ICount:          1044
      EdgeCount:       146
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_2addr_operation
        - njs_generate_3addr_operation
        - njs_generate_array
        - njs_generate_assignment
        - njs_generate_await
        - njs_generate_block_statement
        - njs_generate_break_statement
        - njs_generate_comma_expression
        - njs_generate_cond_expression
        - njs_generate_continue_statement
        - njs_generate_debugger_statement
        - njs_generate_do_while_statement
        - njs_generate_export_statement
        - njs_generate_for_in_statement
        - njs_generate_for_statement
        - njs_generate_function
        - njs_generate_function_call
        - njs_generate_function_declaration
        - njs_generate_function_expression
        - njs_generate_if_statement
        - njs_generate_import_statement
        - njs_generate_inc_dec_operation
        - njs_generate_logical_assignment
        - njs_generate_method_call
        - njs_generate_name
        - njs_generate_object
        - njs_generate_operation_assignment
        - njs_generate_optional_chain
        - njs_generate_property_accessor
        - njs_generate_regexp
        - njs_generate_return_statement
        - njs_generate_statement
        - njs_generate_stop_statement
        - njs_generate_switch_statement
        - njs_generate_template_literal
        - njs_generate_test_jump_expression
        - njs_generate_throw_statement
        - njs_generate_try_statement
        - njs_generate_typeof_operation
        - njs_generate_var_statement
        - njs_generate_while_statement
        - njs_mp_free
        - njs_scope_global_index
        - njs_throw_error
      functionUses:    72
      BranchProfiles:
        - Branch String:   'src/njs_generator.c:720,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_generator.c:717,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:717,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:725,16'
          Dst:             njs_generate_var_statement
        - Src:             'src/njs_generator.c:728,16'
          Dst:             njs_generate_if_statement
        - Src:             'src/njs_generator.c:731,16'
          Dst:             njs_generate_cond_expression
        - Src:             'src/njs_generator.c:734,16'
          Dst:             njs_generate_switch_statement
        - Src:             'src/njs_generator.c:737,16'
          Dst:             njs_generate_while_statement
        - Src:             'src/njs_generator.c:740,16'
          Dst:             njs_generate_do_while_statement
        - Src:             'src/njs_generator.c:743,16'
          Dst:             njs_generate_for_statement
        - Src:             'src/njs_generator.c:746,16'
          Dst:             njs_generate_for_in_statement
        - Src:             'src/njs_generator.c:749,16'
          Dst:             njs_generate_continue_statement
        - Src:             'src/njs_generator.c:752,16'
          Dst:             njs_generate_break_statement
        - Src:             'src/njs_generator.c:755,16'
          Dst:             njs_generate_debugger_statement
        - Src:             'src/njs_generator.c:758,16'
          Dst:             njs_generate_statement
        - Src:             'src/njs_generator.c:761,16'
          Dst:             njs_generate_block_statement
        - Src:             'src/njs_generator.c:764,16'
          Dst:             njs_generate_stop_statement
        - Src:             'src/njs_generator.c:767,16'
          Dst:             njs_generate_comma_expression
        - Src:             'src/njs_generator.c:770,16'
          Dst:             njs_generate_assignment
        - Src:             'src/njs_generator.c:784,16'
          Dst:             njs_generate_operation_assignment
        - Src:             'src/njs_generator.c:789,16'
          Dst:             njs_generate_logical_assignment
        - Src:             'src/njs_generator.c:815,16'
          Dst:             njs_generate_3addr_operation
        - Src:             'src/njs_generator.c:824,16'
          Dst:             njs_generate_3addr_operation
        - Src:             'src/njs_generator.c:829,16'
          Dst:             njs_generate_test_jump_expression
        - Src:             'src/njs_generator.c:832,16'
          Dst:             njs_generate_optional_chain
        - Src:             'src/njs_generator.c:840,16'
          Dst:             njs_generate_2addr_operation
        - Src:             'src/njs_generator.c:843,16'
          Dst:             njs_generate_typeof_operation
        - Src:             'src/njs_generator.c:847,16'
          Dst:             njs_generate_inc_dec_operation
        - Src:             'src/njs_generator.c:851,16'
          Dst:             njs_generate_inc_dec_operation
        - Src:             'src/njs_generator.c:858,23'
          Dst:             njs_scope_global_index
        - Src:             'src/njs_generator.c:864,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:864,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:869,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:869,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:872,16'
          Dst:             njs_generate_object
        - Src:             'src/njs_generator.c:876,16'
          Dst:             njs_generate_property_accessor
        - Src:             'src/njs_generator.c:879,16'
          Dst:             njs_generate_array
        - Src:             'src/njs_generator.c:883,16'
          Dst:             njs_generate_function_expression
        - Src:             'src/njs_generator.c:887,16'
          Dst:             njs_generate_function
        - Src:             'src/njs_generator.c:890,16'
          Dst:             njs_generate_regexp
        - Src:             'src/njs_generator.c:893,16'
          Dst:             njs_generate_template_literal
        - Src:             'src/njs_generator.c:896,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:896,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:902,16'
          Dst:             njs_generate_name
        - Src:             'src/njs_generator.c:906,16'
          Dst:             njs_generate_function_declaration
        - Src:             'src/njs_generator.c:909,16'
          Dst:             njs_generate_function_call
        - Src:             'src/njs_generator.c:912,16'
          Dst:             njs_generate_return_statement
        - Src:             'src/njs_generator.c:915,16'
          Dst:             njs_generate_method_call
        - Src:             'src/njs_generator.c:918,16'
          Dst:             njs_generate_try_statement
        - Src:             'src/njs_generator.c:921,16'
          Dst:             njs_generate_throw_statement
        - Src:             'src/njs_generator.c:924,16'
          Dst:             njs_generate_import_statement
        - Src:             'src/njs_generator.c:927,16'
          Dst:             njs_generate_export_statement
        - Src:             'src/njs_generator.c:930,16'
          Dst:             njs_generate_await
        - Src:             'src/njs_generator.c:933,9'
          Dst:             njs_throw_error
    - functionName:    njs_generate_var_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1163
      functionLinenumberEnd: 1213
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          369
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - njs_generate_let
        - njs_generate_variable_wo_dest
        - njs_generate_wo_dest
        - njs_mp_alloc
        - njs_mp_free
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1170,11'
          Dst:             njs_generate_variable_wo_dest
        - Src:             'src/njs_generator.c:1182,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:1187,19'
          Dst:             njs_generate_let
        - Src:             'src/njs_generator.c:1195,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1195,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1199,15'
          Dst:             njs_generate_wo_dest
        - Src:             'src/njs_generator.c:1210,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1210,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_if_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1283
      functionLinenumberEnd: 1299
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          171
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_start_block
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1286,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:1296,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1296,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_cond_expression
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1405
      functionLinenumberEnd: 1409
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1408,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1408,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_switch_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1514
      functionLinenumberEnd: 1522
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          147
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1521,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1521,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_while_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1755
      functionLinenumberEnd: 1783
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          236
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_generate_start_block
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1766,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1766,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1769,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:1779,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1779,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_do_while_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1837
      functionLinenumberEnd: 1855
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          183
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_start_block
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1841,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:1851,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1851,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_for_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1904
      functionLinenumberEnd: 1922
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          174
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_start_block
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1908,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:1918,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1918,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_for_in_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2328
      functionLinenumberEnd: 2384
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          510
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - njs_generate_start_block
        - njs_generate_variable_wo_dest
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2333,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:2349,19'
          Dst:             njs_generate_variable_wo_dest
        - Src:             'src/njs_generator.c:2359,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2359,20'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2371,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2371,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2380,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2380,13'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_continue_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2893
      functionLinenumberEnd: 2936
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          248
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_code_map
        - njs_generate_find_block
        - njs_generate_jump_destination
        - njs_generate_make_continuation_patch
        - njs_generate_reserve
        - njs_mp_free
        - njs_parser_node_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2901,13'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:2909,16'
          Dst:             njs_generate_jump_destination
        - Src:             'src/njs_generator.c:2918,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2918,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2921,13'
          Dst:             njs_generate_make_continuation_patch
        - Src:             'src/njs_generator.c:2928,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2928,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2932,5'
          Dst:             njs_parser_node_error
    - functionName:    njs_generate_break_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2942
      functionLinenumberEnd: 2983
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          248
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_code_map
        - njs_generate_find_block
        - njs_generate_jump_destination
        - njs_generate_make_exit_patch
        - njs_generate_reserve
        - njs_mp_free
        - njs_parser_node_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2950,13'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:2957,16'
          Dst:             njs_generate_jump_destination
        - Src:             'src/njs_generator.c:2965,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2965,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2968,13'
          Dst:             njs_generate_make_exit_patch
        - Src:             'src/njs_generator.c:2975,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2975,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2979,5'
          Dst:             njs_parser_node_error
    - functionName:    njs_generate_debugger_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2989
      functionLinenumberEnd: 3001
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          167
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_dest_index
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2992,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2992,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2995,24'
          Dst:             njs_generate_dest_index
        - Src:             'src/njs_generator.c:3000,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3000,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3007
      functionLinenumberEnd: 3048
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          376
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - njs_generate_children
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_alloc
        - njs_mp_free
        - njs_variable_reference
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3017,15'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:3025,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3025,13'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3031,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3031,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3041,11'
          Dst:             njs_generate_children
        - Src:             'src/njs_generator.c:3046,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3046,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_block_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3053
      functionLinenumberEnd: 3072
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          176
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_start_block
        - njs_generate_statement
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3057,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:3065,11'
          Dst:             njs_generate_statement
        - Src:             'src/njs_generator.c:3070,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3070,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_stop_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3109
      functionLinenumberEnd: 3122
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          156
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_children
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3115,11'
          Dst:             njs_generate_children
        - Src:             'src/njs_generator.c:3120,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3120,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_comma_expression
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3157
      functionLinenumberEnd: 3170
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          156
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_children
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3163,11'
          Dst:             njs_generate_children
        - Src:             'src/njs_generator.c:3168,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3168,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_assignment
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3424
      functionLinenumberEnd: 3467
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          347
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - njs_generate_assignment_prop
        - njs_generate_code_map
        - njs_generate_property_lvalue
        - njs_generate_reserve
        - njs_generate_variable
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3436,15'
          Dst:             njs_generate_variable
        - Src:             'src/njs_generator.c:3443,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3443,13'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3447,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3447,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3454,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3454,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3464,12'
          Dst:             njs_generate_property_lvalue
        - Src:             'src/njs_generator.c:3464,12'
          Dst:             njs_generate_assignment_prop
    - functionName:    njs_generate_operation_assignment
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3618
      functionLinenumberEnd: 3678
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          461
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - njs_generate_code_map
        - njs_generate_operation_assignment_prop
        - njs_generate_property_lvalue
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_generate_variable
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser_has_side_effect
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3630,15'
          Dst:             njs_generate_variable
        - Src:             'src/njs_generator.c:3637,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3637,13'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3641,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3641,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3647,13'
          Dst:             njs_parser_has_side_effect
        - Src:             'src/njs_generator.c:3650,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3650,13'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3654,21'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:3664,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3664,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3671,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:3675,12'
          Dst:             njs_generate_property_lvalue
        - Src:             'src/njs_generator.c:3675,12'
          Dst:             njs_generate_operation_assignment_prop
    - functionName:    njs_generate_logical_assignment
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3781
      functionLinenumberEnd: 3850
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          680
      EdgeCount:       75
      CyclomaticComplexity: 22
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_generate_test_jump
        - njs_generate_variable
        - njs_mp_alloc
        - njs_mp_free
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3792,15'
          Dst:             njs_generate_variable
        - Src:             'src/njs_generator.c:3798,15'
          Dst:             njs_generate_test_jump
        - Src:             'src/njs_generator.c:3806,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3806,13'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3815,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3815,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3822,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3822,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3830,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:3838,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3838,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3847,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3847,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_3addr_operation
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4413
      functionLinenumberEnd: 4439
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          406
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4423,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4423,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4429,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4429,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4436,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4436,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_test_jump_expression
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4193
      functionLinenumberEnd: 4197
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4196,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4196,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_optional_chain
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4297
      functionLinenumberEnd: 4316
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          232
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_optional_method_call
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4303,12'
          Dst:             njs_generate_optional_method_call
        - Src:             'src/njs_generator.c:4314,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4314,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_2addr_operation
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4531
      functionLinenumberEnd: 4535
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4534,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4534,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_typeof_operation
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4566
      functionLinenumberEnd: 4586
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          189
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_typeof_operation_end
        - njs_generate_variable
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4575,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4575,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4580,11'
          Dst:             njs_generate_variable
        - Src:             'src/njs_generator.c:4585,12'
          Dst:             njs_generate_typeof_operation_end
    - functionName:    njs_generate_inc_dec_operation
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4615
      functionLinenumberEnd: 4670
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          425
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - njs_generate_code_map
        - njs_generate_dest_index
        - njs_generate_global_property_set
        - njs_generate_inc_dec_operation_prop
        - njs_generate_property_lvalue
        - njs_generate_reserve
        - njs_generate_variable
        - njs_mp_free
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4627,15'
          Dst:             njs_generate_variable
        - Src:             'src/njs_generator.c:4634,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4634,13'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4638,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4638,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4641,17'
          Dst:             njs_generate_dest_index
        - Src:             'src/njs_generator.c:4648,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4648,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4654,15'
          Dst:             njs_generate_global_property_set
        - Src:             'src/njs_generator.c:4659,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4659,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4663,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:4667,12'
          Dst:             njs_generate_property_lvalue
        - Src:             'src/njs_generator.c:4667,12'
          Dst:             njs_generate_inc_dec_operation_prop
    - functionName:    njs_generate_object
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3946
      functionLinenumberEnd: 3965
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          217
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_generate_code_map
        - njs_generate_object_dest_index
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3949,19'
          Dst:             njs_generate_object_dest_index
        - Src:             'src/njs_generator.c:3954,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3954,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3962,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3962,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_property_accessor
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3971
      functionLinenumberEnd: 3993
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          413
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3976,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3976,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3983,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3983,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3990,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3990,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_array
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4022
      functionLinenumberEnd: 4043
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          231
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_generate_code_map
        - njs_generate_object_dest_index
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4025,19'
          Dst:             njs_generate_object_dest_index
        - Src:             'src/njs_generator.c:4030,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4030,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4040,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4040,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_function_expression
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4049
      functionLinenumberEnd: 4089
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          600
      EdgeCount:       64
      CyclomaticComplexity: 17
      functionsReached:
        - njs_dtoa2
        - njs_generate_code_map
        - njs_generate_function_scope
        - njs_generate_object_dest_index
        - njs_generate_reference_error
        - njs_generate_reserve
        - njs_mp_free
        - njs_string_new
        - njs_variable_reference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4056,11'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:4058,15'
          Dst:             njs_generate_reference_error
        - Src:             'src/njs_generator.c:4063,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4063,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_generator.c:4068,5'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_generator.c:4069,5'
          Dst:             njs_string_new
        - Src:             'src/njs_generator.c:4071,11'
          Dst:             njs_generate_function_scope
        - Src:             'src/njs_generator.c:4076,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4076,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4081,19'
          Dst:             njs_generate_object_dest_index
        - Src:             'src/njs_generator.c:4088,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4088,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_function
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4095
      functionLinenumberEnd: 4121
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          209
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_code_map
        - njs_generate_function_scope
        - njs_generate_object_dest_index
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4102,11'
          Dst:             njs_generate_function_scope
        - Src:             'src/njs_generator.c:4108,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4108,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4113,19'
          Dst:             njs_generate_object_dest_index
        - Src:             'src/njs_generator.c:4120,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4120,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_regexp
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4127
      functionLinenumberEnd: 4141
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          176
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_object_dest_index
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4130,19'
          Dst:             njs_generate_object_dest_index
        - Src:             'src/njs_generator.c:4135,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4135,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4140,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4140,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_template_literal
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4147
      functionLinenumberEnd: 4151
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4150,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4150,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_name
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1094
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          441
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - njs_generate_code_map
        - njs_generate_global_reference
        - njs_generate_reserve
        - njs_mp_free
        - njs_variable_reference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1069,11'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:1071,15'
          Dst:             njs_generate_global_reference
        - Src:             'src/njs_generator.c:1076,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1076,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1080,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1080,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1087,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1087,13'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1093,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1093,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_function_declaration
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4789
      functionLinenumberEnd: 4830
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          676
      EdgeCount:       72
      CyclomaticComplexity: 19
      functionsReached:
        - njs_dtoa2
        - njs_function_alloc
        - njs_generate_function_scope
        - njs_generate_reference_error
        - njs_mp_free
        - njs_string_new
        - njs_variable_reference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4797,11'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:4799,15'
          Dst:             njs_generate_reference_error
        - Src:             'src/njs_generator.c:4804,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4804,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_generator.c:4809,5'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_generator.c:4810,5'
          Dst:             njs_string_new
        - Src:             'src/njs_generator.c:4812,11'
          Dst:             njs_generate_function_scope
        - Src:             'src/njs_generator.c:4818,16'
          Dst:             njs_function_alloc
        - Src:             'src/njs_generator.c:4829,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4829,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_function_call
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5150
      functionLinenumberEnd: 5176
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          216
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_mp_alloc
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5159,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:5166,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:5172,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5172,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_return_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5061
      functionLinenumberEnd: 5065
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5064,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5064,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_method_call
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5275
      functionLinenumberEnd: 5306
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          330
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - njs_generate_method_call_arguments
        - njs_generate_optional_method_call
        - njs_mp_alloc
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5279,9'
          Dst:             njs_generate_optional_method_call
        - Src:             'src/njs_generator.c:5280,16'
          Dst:             njs_generate_method_call_arguments
        - Src:             'src/njs_generator.c:5286,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:5294,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5294,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5303,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5303,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_try_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5678
      functionLinenumberEnd: 5730
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          287
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_generate_start_block
        - njs_generate_temp_index_get
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5686,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5686,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5690,23'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:5703,18'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:5710,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:5726,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5726,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_throw_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6150
      functionLinenumberEnd: 6154
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6153,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:6153,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_import_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6177
      functionLinenumberEnd: 6196
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          175
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
        - njs_variable_reference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6184,11'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:6189,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6189,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:6195,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:6195,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_export_statement
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6202
      functionLinenumberEnd: 6206
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6205,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:6205,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_await
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6232
      functionLinenumberEnd: 6236
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6235,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:6235,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_temp_index_get
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6425
      functionLinenumberEnd: 6447
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          189
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_start_block
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2654
      functionLinenumberEnd: 2676
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2657,13'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_try_left
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5736
      functionLinenumberEnd: 5866
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          947
      EdgeCount:       118
      CyclomaticComplexity: 31
      functionsReached:
        - njs_generate_code_map
        - njs_generate_patch_block
        - njs_generate_reserve
        - njs_generate_start_block
        - njs_mp_alloc
        - njs_variable_reference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5752,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5752,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5762,9'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:5765,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5765,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5778,9'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:5781,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5781,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5807,15'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:5814,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5814,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5818,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5818,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5826,15'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:5833,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5833,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5836,15'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:5847,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5847,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5854,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5854,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5863,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5863,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_try_catch
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5872
      functionLinenumberEnd: 5960
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          383
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - njs_generate_code_map
        - njs_generate_find_block
        - njs_generate_index_release
        - njs_generate_make_continuation_patch
        - njs_generate_make_exit_patch
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5889,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5889,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5897,21'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:5901,21'
          Dst:             njs_generate_make_continuation_patch
        - Src:             'src/njs_generator.c:5911,21'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:5921,25'
          Dst:             njs_generate_make_exit_patch
        - Src:             'src/njs_generator.c:5936,25'
          Dst:             njs_generate_find_block
        - Src:             'src/njs_generator.c:5941,29'
          Dst:             njs_generate_make_exit_patch
        - Src:             'src/njs_generator.c:5954,11'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:5959,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5959,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_optional_method_call
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4263
      functionLinenumberEnd: 4291
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          147
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - njs_throw_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4276,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:4281,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:4286,9'
          Dst:             njs_throw_error
    - functionName:    njs_generate_method_call_arguments
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5312
      functionLinenumberEnd: 5352
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          284
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - njs_generate_call_argument_expressions
        - njs_generate_method_call_frame
        - njs_generate_method_call_prepare
        - njs_generate_node_temp_index_get
        - njs_generate_property_get
        - njs_mp_alloc
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5320,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:5325,23'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:5330,15'
          Dst:             njs_generate_property_get
        - Src:             'src/njs_generator.c:5336,16'
          Dst:             njs_generate_method_call_frame
        - Src:             'src/njs_generator.c:5339,11'
          Dst:             njs_generate_method_call_prepare
        - Src:             'src/njs_generator.c:5344,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5344,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5351,12'
          Dst:             njs_generate_call_argument_expressions
    - functionName:    njs_generate_node_temp_index_get
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6413
      functionLinenumberEnd: 6418
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_generate_temp_index_get
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6416,19'
          Dst:             njs_generate_temp_index_get
    - functionName:    njs_generate_property_get
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3389
      functionLinenumberEnd: 3400
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_code_map
        - njs_generate_property_get_opcode
        - njs_generate_reserve
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3392,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3392,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3392,5'
          Dst:             njs_generate_property_get_opcode
    - functionName:    njs_generate_method_call_frame
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5383
      functionLinenumberEnd: 5412
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          202
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_call_nargs
        - njs_generate_code_map
        - njs_generate_method_call_end
        - njs_generate_reserve
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5391,13'
          Dst:             njs_generate_call_nargs
        - Src:             'src/njs_generator.c:5394,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:5398,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5398,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5406,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5406,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5411,12'
          Dst:             njs_generate_method_call_end
    - functionName:    njs_generate_method_call_prepare
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5358
      functionLinenumberEnd: 5377
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          93
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_capture_stable_value
        - njs_generate_node_temp_index_get
        - njs_generate_property_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5365,11'
          Dst:             njs_generate_capture_stable_value
        - Src:             'src/njs_generator.c:5370,19'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:5375,12'
          Dst:             njs_generate_property_get
    - functionName:    njs_generate_call_argument_expressions
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5455
      functionLinenumberEnd: 5466
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          235
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5457,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5457,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5462,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5462,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_call_argument_expressions_after
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5472
      functionLinenumberEnd: 5494
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          290
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_argument_aliases_mutable_slot
        - njs_generate_argument_suffix_may_observe_effect
        - njs_generate_capture_stable_value
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5476,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5476,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5479,9'
          Dst:             njs_generate_argument_aliases_mutable_slot
        - Src:             'src/njs_generator.c:5480,12'
          Dst:             njs_generate_argument_suffix_may_observe_effect
        - Src:             'src/njs_generator.c:5482,15'
          Dst:             njs_generate_capture_stable_value
        - Src:             'src/njs_generator.c:5490,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5490,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_argument_aliases_mutable_slot
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5499
      functionLinenumberEnd: 5519
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_argument_index_is_mutable
        - njs_generate_argument_uses_index
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5514,10'
          Dst:             njs_generate_argument_index_is_mutable
        - Src:             'src/njs_generator.c:5518,12'
          Dst:             njs_generate_argument_uses_index
    - functionName:    njs_generate_argument_suffix_may_observe_effect
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5602
      functionLinenumberEnd: 5610
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_argument_may_observe_effect
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5604,13'
          Dst:             njs_generate_argument_may_observe_effect
    - functionName:    njs_generate_capture_stable_value
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5632
      functionLinenumberEnd: 5650
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_temp_index_get
        - njs_generate_reserve
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5642,19'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:5647,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5647,5'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_argument_may_observe_effect
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5570
      functionLinenumberEnd: 5596
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          77
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - njs_variable_resolve
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_generator.c:5573,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_generator.c:5591,16'
          Dst:             njs_variable_resolve
    - functionName:    njs_generate_argument_index_is_mutable
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5524
      functionLinenumberEnd: 5536
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_argument_uses_index
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5541
      functionLinenumberEnd: 5565
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          144
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - njs_generate_argument_uses_index
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5553,12'
          Dst:             njs_generate_argument_uses_index
        - Src:             'src/njs_generator.c:5559,12'
          Dst:             njs_generate_argument_uses_index
    - functionName:    njs_generate_call_nargs
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5615
      functionLinenumberEnd: 5625
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_method_call_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5418
      functionLinenumberEnd: 5427
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          121
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_call
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5421,11'
          Dst:             njs_generate_call
        - Src:             'src/njs_generator.c:5426,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5426,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_call
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5433
      functionLinenumberEnd: 5449
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_code_map
        - njs_generate_dest_index
        - njs_generate_reserve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5437,14'
          Dst:             njs_generate_dest_index
        - Src:             'src/njs_generator.c:5444,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5444,5'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_dest_index
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6364
      functionLinenumberEnd: 6385
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          137
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_node_temp_index_get
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6369,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:6384,12'
          Dst:             njs_generate_node_temp_index_get
    - functionName:    njs_generate_children_indexes_release
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6453
      functionLinenumberEnd: 6463
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_generate_node_index_release
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6456,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:6459,16'
          Dst:             njs_generate_node_index_release
    - functionName:    njs_generate_node_index_release
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6469
      functionLinenumberEnd: 6480
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_index_release
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6476,16'
          Dst:             njs_generate_index_release
    - functionName:    njs_generate_property_get_opcode
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3359
      functionLinenumberEnd: 3368
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_return_statement_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5073
      functionLinenumberEnd: 5144
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          442
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - njs_generate_code_map
        - njs_generate_jump_destination
        - njs_generate_lookup_block
        - njs_generate_make_exit_patch
        - njs_generate_reserve
        - njs_mp_free
        - njs_scope_global_index
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5085,17'
          Dst:             njs_scope_global_index
        - Src:             'src/njs_generator.c:5093,17'
          Dst:             njs_generate_lookup_block
        - Src:             'src/njs_generator.c:5099,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5099,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5104,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5104,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5108,16'
          Dst:             njs_generate_jump_destination
        - Src:             'src/njs_generator.c:5129,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5129,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5135,13'
          Dst:             njs_generate_make_exit_patch
        - Src:             'src/njs_generator.c:5143,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5143,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_function_call_arguments
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5182
      functionLinenumberEnd: 5202
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          193
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_generate_call_argument_expressions
        - njs_generate_capture_stable_value
        - njs_generate_function_call_frame
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5185,11'
          Dst:             njs_generate_capture_stable_value
        - Src:             'src/njs_generator.c:5191,16'
          Dst:             njs_generate_function_call_frame
        - Src:             'src/njs_generator.c:5194,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5194,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:5201,12'
          Dst:             njs_generate_call_argument_expressions
    - functionName:    njs_generate_function_call_frame
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5208
      functionLinenumberEnd: 5245
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          246
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_call_nargs
        - njs_generate_code_map
        - njs_generate_function_call_end
        - njs_generate_reserve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5220,13'
          Dst:             njs_generate_call_nargs
        - Src:             'src/njs_generator.c:5223,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5223,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5231,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5231,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5239,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5239,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:5244,12'
          Dst:             njs_generate_function_call_end
    - functionName:    njs_generate_function_call_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5251
      functionLinenumberEnd: 5269
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          172
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_call
        - njs_generate_index_release
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5255,11'
          Dst:             njs_generate_call
        - Src:             'src/njs_generator.c:5262,15'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:5268,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:5268,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_reference_error
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6340
      functionLinenumberEnd: 6358
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          444
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - njs_dtoa2
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_name_copy
        - njs_string_new
        - njs_symbol_descriptive_string
        - njs_throw_error
        - njs_value_to_string
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6345,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:6350,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6350,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_generator.c:6357,12'
          Dst:             njs_name_copy
    - functionName:    njs_generate_function_scope
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4837
      functionLinenumberEnd: 4873
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          155
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_scope
        - njs_generator_init
        - njs_throw_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4846,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:4850,11'
          Dst:             njs_generator_init
        - Src:             'src/njs_generator.c:4852,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_generator.c:4858,12'
          Dst:             njs_generate_scope
        - Src:             'src/njs_generator.c:4861,13'
          Dst:             njs_throw_error
    - functionName:    njs_generator_init
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_scope
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4879
      functionLinenumberEnd: 5007
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          642
      EdgeCount:       72
      CyclomaticComplexity: 21
      functionsReached:
        - njs_arr_add
        - njs_arr_create
        - njs_generate_lambda_variables
        - njs_generate_reserve
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4892,9'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4894,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_generator.c:4901,13'
          Dst:             njs_generate_lambda_variables
        - Src:             'src/njs_generator.c:4907,21'
          Dst:             njs_arr_create
        - Src:             'src/njs_generator.c:4914,12'
          Dst:             njs_arr_add
        - Src:             'src/njs_generator.c:4916,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_generator.c:4923,23'
          Dst:             njs_arr_create
        - Src:             'src/njs_generator.c:4926,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_generator.c:4933,27'
          Dst:             njs_arr_create
        - Src:             'src/njs_generator.c:4944,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4944,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4968,45'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4971,17'
          Dst:             njs_memory_error
        - Src:             'src/njs_generator.c:4983,22'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4985,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_generator.c:4992,9'
          Dst:             njs_mp_free
    - functionName:    njs_generate_lambda_variables
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5022
      functionLinenumberEnd: 5055
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          226
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:5046,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:5046,13'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_scope_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5013
      functionLinenumberEnd: 5015
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_global_reference
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6298
      functionLinenumberEnd: 6334
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          315
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - njs_dtoa2
        - njs_generate_code_map
        - njs_generate_reference_error
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_scope_global_index
        - njs_string_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6303,13'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:6308,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:6308,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_generator.c:6319,5'
          Dst:             njs_string_new
        - Src:             'src/njs_generator.c:6321,26'
          Dst:             njs_scope_global_index
        - Src:             'src/njs_generator.c:6333,12'
          Dst:             njs_generate_reference_error
    - functionName:    njs_generate_template_literal_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4159
      functionLinenumberEnd: 4169
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          157
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4162,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4162,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4168,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4168,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_object_dest_index
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6391
      functionLinenumberEnd: 6407
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_node_temp_index_get
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6406,12'
          Dst:             njs_generate_node_temp_index_get
    - functionName:    njs_generator_pop
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 943
      functionLinenumberEnd: 944
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          97
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:944,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:944,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_property_accessor_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3999
      functionLinenumberEnd: 4016
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          184
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4006,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4006,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4015,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4015,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_variable
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1100
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          295
      EdgeCount:       66
      CyclomaticComplexity: 16
      functionsReached:
        - njs_generate_code_map
        - njs_generate_global_reference
        - njs_generate_reference_error
        - njs_generate_reserve
        - njs_variable_reference
      functionUses:    6
      BranchProfiles:
        - Branch String:   'src/njs_generator.c:1112,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_generator.c:1105,11'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:1114,20'
          Dst:             njs_generate_reference_error
        - Src:             'src/njs_generator.c:1118,20'
          Dst:             njs_generate_global_reference
        - Src:             'src/njs_generator.c:1131,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1131,13'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_global_property_set
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3186
      functionLinenumberEnd: 3210
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          273
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - njs_dtoa2
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_scope_global_index
        - njs_string_new
        - njs_variable_reference
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3191,11'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:3193,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3193,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_generator.c:3199,9'
          Dst:             njs_string_new
        - Src:             'src/njs_generator.c:3201,30'
          Dst:             njs_scope_global_index
    - functionName:    njs_generate_inc_dec_operation_prop
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4676
      functionLinenumberEnd: 4783
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         74
      ICount:          614
      EdgeCount:       99
      CyclomaticComplexity: 27
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_index_release
        - njs_generate_node_temp_index_get
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4700,18'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:4707,22'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:4712,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4712,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4722,20'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:4741,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4741,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4748,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4748,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4761,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4761,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4769,15'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:4775,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4777,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:4782,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4782,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_property_lvalue
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3217
      functionLinenumberEnd: 3239
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          294
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3227,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3227,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3236,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3236,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_typeof_operation_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4592
      functionLinenumberEnd: 4609
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          186
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_dest_index
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4595,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4595,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4599,19'
          Dst:             njs_generate_dest_index
        - Src:             'src/njs_generator.c:4608,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4608,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_2addr_operation_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4543
      functionLinenumberEnd: 4560
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          184
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_dest_index
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4546,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4546,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4550,19'
          Dst:             njs_generate_dest_index
        - Src:             'src/njs_generator.c:4559,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4559,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_optional_chain_after
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4324
      functionLinenumberEnd: 4361
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          360
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_temp_index_get
        - njs_generate_optional_method_call
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4331,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4331,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4336,19'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:4343,12'
          Dst:             njs_generate_optional_method_call
        - Src:             'src/njs_generator.c:4357,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4357,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_optional_chain_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4367
      functionLinenumberEnd: 4407
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          336
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_index_release
        - njs_generate_optional_method_call
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4376,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4376,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4383,12'
          Dst:             njs_generate_optional_method_call
        - Src:             'src/njs_generator.c:4394,15'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:4401,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:4406,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4406,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_test_jump_expression_after
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4206
      functionLinenumberEnd: 4228
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          208
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_node_temp_index_get
        - njs_generate_test_jump
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4210,19'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:4215,11'
          Dst:             njs_generate_test_jump
        - Src:             'src/njs_generator.c:4224,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4224,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_test_jump
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4176
      functionLinenumberEnd: 4187
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4179,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4179,5'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_test_jump_expression_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4234
      functionLinenumberEnd: 4258
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          223
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4245,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4245,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4252,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:4257,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4257,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_3addr_operation_name
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4445
      functionLinenumberEnd: 4471
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          240
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_temp_index_get
        - njs_generate_reserve
        - njs_mp_alloc
        - njs_parser_has_side_effect
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4452,9'
          Dst:             njs_parser_has_side_effect
        - Src:             'src/njs_generator.c:4453,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4453,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4457,17'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:4467,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:4467,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_3addr_operation_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4477
      functionLinenumberEnd: 4525
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          285
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - njs_generate_code_map
        - njs_generate_dest_index
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:4497,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:4497,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:4515,19'
          Dst:             njs_generate_dest_index
        - Src:             'src/njs_generator.c:4524,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:4524,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_logical_assignment_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3886
      functionLinenumberEnd: 3940
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          365
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_global_property_set
        - njs_generate_node_index_release
        - njs_generate_node_index_release_pop
        - njs_generate_property_set
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3902,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3902,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3907,15'
          Dst:             njs_generate_global_property_set
        - Src:             'src/njs_generator.c:3917,15'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:3922,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3922,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3925,11'
          Dst:             njs_generate_property_set
        - Src:             'src/njs_generator.c:3934,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:3939,12'
          Dst:             njs_generate_node_index_release_pop
    - functionName:    njs_generate_logical_assignment_prop
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3856
      functionLinenumberEnd: 3880
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          204
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_read_property_assignment
        - njs_generate_test_jump
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3860,11'
          Dst:             njs_generate_read_property_assignment
        - Src:             'src/njs_generator.c:3866,11'
          Dst:             njs_generate_test_jump
        - Src:             'src/njs_generator.c:3875,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3875,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_read_property_assignment
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3292
      functionLinenumberEnd: 3326
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          134
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_node_temp_index_get
        - njs_generate_preserve_property_lvalue
        - njs_generate_property_get
        - njs_generate_property_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3301,11'
          Dst:             njs_generate_preserve_property_lvalue
        - Src:             'src/njs_generator.c:3306,19'
          Dst:             njs_generate_property_index
        - Src:             'src/njs_generator.c:3312,13'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:3317,11'
          Dst:             njs_generate_property_get
    - functionName:    njs_generate_preserve_property_lvalue
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3246
      functionLinenumberEnd: 3285
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          217
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_temp_index_get
        - njs_generate_reserve
        - njs_parser_has_side_effect
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3251,10'
          Dst:             njs_parser_has_side_effect
        - Src:             'src/njs_generator.c:3265,17'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:3270,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3270,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3276,17'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:3281,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3281,9'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_property_index
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3333
      functionLinenumberEnd: 3354
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          133
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_temp_index_get
        - njs_generate_reserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3340,22'
          Dst:             njs_generate_node_temp_index_get
        - Src:             'src/njs_generator.c:3345,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3345,9'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_property_set
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3407
      functionLinenumberEnd: 3418
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_code_map
        - njs_generate_property_set_opcode
        - njs_generate_reserve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3410,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3410,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3410,5'
          Dst:             njs_generate_property_set_opcode
    - functionName:    njs_generate_node_index_release_pop
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6485
      functionLinenumberEnd: 6496
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          145
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_index_release
        - njs_mp_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6489,15'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:6495,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:6495,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_property_set_opcode
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3373
      functionLinenumberEnd: 3382
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_generate_operation_assignment_name
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3684
      functionLinenumberEnd: 3718
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          170
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_code_map
        - njs_generate_global_property_set
        - njs_generate_index_release
        - njs_generate_node_index_release_pop
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3695,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3695,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3703,11'
          Dst:             njs_generate_global_property_set
        - Src:             'src/njs_generator.c:3709,15'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:3715,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3717,12'
          Dst:             njs_generate_node_index_release_pop
    - functionName:    njs_generate_operation_assignment_prop
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3724
      functionLinenumberEnd: 3740
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          174
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_read_property_assignment
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3728,11'
          Dst:             njs_generate_read_property_assignment
        - Src:             'src/njs_generator.c:3736,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3736,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_operation_assignment_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3746
      functionLinenumberEnd: 3775
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          155
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_node_index_release_pop
        - njs_generate_property_set
        - njs_generate_reserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3757,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3757,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3763,11'
          Dst:             njs_generate_property_set
        - Src:             'src/njs_generator.c:3769,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:3774,12'
          Dst:             njs_generate_node_index_release_pop
    - functionName:    njs_generate_assignment_name
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3473
      functionLinenumberEnd: 3499
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          217
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_code_map
        - njs_generate_global_property_set
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3486,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3486,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3493,11'
          Dst:             njs_generate_global_property_set
        - Src:             'src/njs_generator.c:3498,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3498,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_assignment_prop
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3505
      functionLinenumberEnd: 3521
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          176
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_preserve_property_lvalue
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3510,11'
          Dst:             njs_generate_preserve_property_lvalue
        - Src:             'src/njs_generator.c:3518,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3518,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_assignment_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3527
      functionLinenumberEnd: 3612
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         71
      ICount:          584
      EdgeCount:       93
      CyclomaticComplexity: 24
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_index_release
        - njs_generate_property_set_opcode
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_mp_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_generator.c:3542,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_generator.c:3556,17'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3556,17'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3559,30'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:3568,17'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3568,17'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3576,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3576,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3581,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3581,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3586,18'
          Dst:             njs_generate_property_set_opcode
        - Src:             'src/njs_generator.c:3588,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3588,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3597,15'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:3606,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:3611,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3611,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_children
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3088
      functionLinenumberEnd: 3103
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          282
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3093,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3093,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3100,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:3100,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_comma_expression_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3176
      functionLinenumberEnd: 3179
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          105
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3179,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3179,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_stop_statement_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3128
      functionLinenumberEnd: 3151
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          220
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_mp_free
        - njs_scope_global_index
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3132,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:3132,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:3135,13'
          Dst:             njs_scope_global_index
        - Src:             'src/njs_generator.c:3150,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3150,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_block_statement_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3078
      functionLinenumberEnd: 3081
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          100
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_generate_patch_block_exit
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:3079,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:3081,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:3081,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_patch_block_exit
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2842
      functionLinenumberEnd: 2853
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_generate_patch_block
        - njs_mp_free
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2848,5'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:2852,5'
          Dst:             njs_mp_free
    - functionName:    njs_generate_variable_wo_dest
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1144
      functionLinenumberEnd: 1156
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_variable
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1152,11'
          Dst:             njs_generate_variable
    - functionName:    njs_generate_for_in_object
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2489
      functionLinenumberEnd: 2524
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          284
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2503,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2503,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2508,18'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:2521,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2521,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_for_in_object_left_hand_expr
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2390
      functionLinenumberEnd: 2447
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          547
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2400,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2400,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2405,18'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:2410,29'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:2426,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2426,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2435,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2435,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2444,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2444,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_for_in_object_wo_decl
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2262
      functionLinenumberEnd: 2322
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          535
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2277,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2277,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2282,18'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:2300,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2300,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2309,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2309,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2318,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2318,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_for_in_body_wo_decl
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2204
      functionLinenumberEnd: 2256
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          304
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_for_let_update
        - njs_generate_index_release
        - njs_generate_patch_block
        - njs_generate_patch_block_exit
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2219,15'
          Dst:             njs_generate_for_let_update
        - Src:             'src/njs_generator.c:2225,5'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:2231,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2231,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2239,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:2245,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:2250,11'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:2255,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2255,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_for_in_name_assign
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2153
      functionLinenumberEnd: 2198
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          275
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_code_map
        - njs_generate_global_property_set
        - njs_generate_reserve
        - njs_generate_temp_index_get
        - njs_mp_free
        - njs_variable_reference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2166,11'
          Dst:             njs_variable_reference
        - Src:             'src/njs_generator.c:2172,33'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:2186,17'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2186,17'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2190,19'
          Dst:             njs_generate_global_property_set
        - Src:             'src/njs_generator.c:2197,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2197,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_for_let_update
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2090
      functionLinenumberEnd: 2116
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          148
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2107,13'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2107,13'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_for_in_body_left_hand_expr
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2530
      functionLinenumberEnd: 2572
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          265
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_index_release
        - njs_generate_patch_block
        - njs_generate_patch_block_exit
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2541,5'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:2547,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2547,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2555,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:2561,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:2566,11'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:2571,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2571,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_for_in_set_prop_block
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2453
      functionLinenumberEnd: 2483
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          161
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2474,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2474,5'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_for_in_body
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2578
      functionLinenumberEnd: 2630
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          306
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_children_indexes_release
        - njs_generate_code_map
        - njs_generate_for_let_update
        - njs_generate_index_release
        - njs_generate_patch_block
        - njs_generate_patch_block_exit
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2593,15'
          Dst:             njs_generate_for_let_update
        - Src:             'src/njs_generator.c:2599,5'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:2605,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2605,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2613,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:2619,11'
          Dst:             njs_generate_children_indexes_release
        - Src:             'src/njs_generator.c:2624,11'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:2629,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2629,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_for_init
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1928
      functionLinenumberEnd: 1973
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          298
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_code_map
        - njs_generate_for_resolve_closure
        - njs_generate_node_index_release
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1935,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1947,11'
          Dst:             njs_generate_for_resolve_closure
        - Src:             'src/njs_generator.c:1960,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1960,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1970,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1970,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_for_resolve_closure
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2144
      functionLinenumberEnd: 2145
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_generate_for_resolve_closure_cb
        - njs_parser_traverse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2145,12'
          Dst:             njs_parser_traverse
        - Src:             'src/njs_generator.c:2145,12'
          Dst:             njs_generate_for_resolve_closure_cb
    - functionName:    njs_generate_for_body
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1979
      functionLinenumberEnd: 2009
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          212
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_for_let_update
        - njs_generate_for_resolve_closure
        - njs_generate_patch_block
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1991,11'
          Dst:             njs_generate_for_resolve_closure
        - Src:             'src/njs_generator.c:1996,11'
          Dst:             njs_generate_for_let_update
        - Src:             'src/njs_generator.c:2001,5'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:2006,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2006,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_for_update
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2015
      functionLinenumberEnd: 2044
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          224
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_for_end
        - njs_generate_node_index_release
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2025,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:2038,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2038,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:2043,12'
          Dst:             njs_generate_for_end
    - functionName:    njs_generate_for_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2050
      functionLinenumberEnd: 2084
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          352
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_patch_block_exit
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2061,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2061,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2067,9'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:2069,15'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:2074,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2074,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2077,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:2077,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:2081,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:2083,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:2083,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_for_resolve_closure_cb
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2122
      functionLinenumberEnd: 2138
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_variable_closure_test
        - njs_variable_resolve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2127,15'
          Dst:             njs_variable_resolve
        - Src:             'src/njs_generator.c:2130,23'
          Dst:             njs_variable_closure_test
    - functionName:    njs_generate_do_while_condition
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1861
      functionLinenumberEnd: 1870
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          155
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_patch_block
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1862,5'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:1867,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1867,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_do_while_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1877
      functionLinenumberEnd: 1898
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          196
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_patch_block_exit
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1884,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1884,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1890,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:1892,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1897,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1897,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_while_condition
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1789
      functionLinenumberEnd: 1803
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          180
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_generate_patch_block
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1794,5'
          Dst:             njs_generate_patch_block
        - Src:             'src/njs_generator.c:1801,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1801,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_while_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1810
      functionLinenumberEnd: 1831
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          196
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_patch_block_exit
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1817,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1817,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1823,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:1825,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1830,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1830,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_switch_expression
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1531
      functionLinenumberEnd: 1572
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          300
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
        - njs_generate_start_block
        - njs_generate_switch_case_end
        - njs_generate_temp_index_get
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1543,22'
          Dst:             njs_generate_temp_index_get
        - Src:             'src/njs_generator.c:1548,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1548,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1551,11'
          Dst:             njs_generate_start_block
        - Src:             'src/njs_generator.c:1566,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1566,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1571,12'
          Dst:             njs_generate_switch_case_end
    - functionName:    njs_generate_switch_case
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1578
      functionLinenumberEnd: 1593
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          260
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1581,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1581,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1589,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1589,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_switch_case_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1656
      functionLinenumberEnd: 1685
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          258
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - njs_generate_code_map
        - njs_generate_index_release
        - njs_generate_reserve
        - njs_generate_switch_end
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1664,11'
          Dst:             njs_generate_index_release
        - Src:             'src/njs_generator.c:1669,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1669,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1679,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1679,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1684,12'
          Dst:             njs_generate_switch_end
    - functionName:    njs_generate_switch_default
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1691
      functionLinenumberEnd: 1728
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          368
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1709,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1720,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1720,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1725,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1725,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_switch_end
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1734
      functionLinenumberEnd: 1748
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          141
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_patch_block_exit
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1746,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:1748,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1748,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_switch_case_after
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1599
      functionLinenumberEnd: 1651
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          478
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_reserve
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1609,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1609,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1615,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1620,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1633,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1633,16'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1642,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1642,20'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1648,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1648,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_cond_expression_handler
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1417
      functionLinenumberEnd: 1438
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          231
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_generate_code_map
        - njs_generate_dest_index
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1421,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1421,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1427,19'
          Dst:             njs_generate_dest_index
        - Src:             'src/njs_generator.c:1434,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1434,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_cond_expression_true
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1444
      functionLinenumberEnd: 1481
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          329
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1460,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1460,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1464,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1469,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1469,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1477,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1477,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_cond_expression_false
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1487
      functionLinenumberEnd: 1508
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          230
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_reserve
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1495,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1495,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1502,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1507,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1507,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_if_statement_cond
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1305
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          385
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1310,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1310,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1314,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1329,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1329,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1342,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1342,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_if_statement_then
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1352
      functionLinenumberEnd: 1376
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          254
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - njs_generate_code_map
        - njs_generate_node_index_release
        - njs_generate_reserve
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1357,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1365,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1365,5'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_generator.c:1372,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:1372,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_if_statement_else
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1382
      functionLinenumberEnd: 1399
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          157
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_node_index_release
        - njs_generate_patch_block_exit
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1389,11'
          Dst:             njs_generate_node_index_release
        - Src:             'src/njs_generator.c:1396,5'
          Dst:             njs_generate_patch_block_exit
        - Src:             'src/njs_generator.c:1398,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1398,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_let
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1269
      functionLinenumberEnd: 1277
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_generate_code_map
        - njs_generate_reserve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1272,5'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1272,5'
          Dst:             njs_generate_code_map
    - functionName:    njs_generate_wo_dest
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6266
      functionLinenumberEnd: 6276
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          198
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6275,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_generator.c:6275,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_generate_var_statement_after
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1263
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          429
      EdgeCount:       58
      CyclomaticComplexity: 15
      functionsReached:
        - njs_dtoa2
        - njs_generate_code_map
        - njs_generate_let
        - njs_generate_reserve
        - njs_mp_free
        - njs_string_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:1231,15'
          Dst:             njs_generate_let
        - Src:             'src/njs_generator.c:1244,9'
          Dst:             njs_generate_reserve
        - Src:             'src/njs_generator.c:1244,9'
          Dst:             njs_generate_code_map
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_generator.c:1257,13'
          Dst:             njs_string_new
        - Src:             'src/njs_generator.c:1262,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:1262,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_wo_dest_after
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6284
      functionLinenumberEnd: 6291
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          151
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:6291,12'
          Dst:             njs_mp_free
        - Src:             'src/njs_generator.c:6291,12'
          Dst:             njs_mp_free
    - functionName:    njs_generate_patch
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2782
      functionLinenumberEnd: 2795
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          67
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_generator.c:2793,9'
          Dst:             njs_mp_free
    - functionName:    njs_lookup_line
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1057
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          90
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lookup_code
      functionSourceFile: '/src/njs/src/njs_generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1017
      functionLinenumberEnd: 1030
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_disassemble
      functionSourceFile: '/src/njs/src/njs_disassembler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         80
      ICount:          931
      EdgeCount:       110
      CyclomaticComplexity: 32
      functionsReached:
        - njs_dprintf
        - njs_lookup_line
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_disassembler.c:510,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_disassembler.c:231,16'
          Dst:             njs_lookup_line
        - Src:             'src/njs_disassembler.c:236,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:248,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:260,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:272,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:283,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:295,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:307,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:319,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:331,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:346,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:358,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:370,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:382,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:395,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:411,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:423,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:436,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:448,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:460,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:473,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:485,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:496,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:524,13'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:541,21'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:549,21'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:556,21'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:571,9'
          Dst:             njs_dprintf
    - functionName:    njs_disassembler
      functionSourceFile: '/src/njs/src/njs_disassembler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_disassemble
        - njs_dprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_disassembler.c:179,9'
          Dst:             njs_dprintf
        - Src:             'src/njs_disassembler.c:180,9'
          Dst:             njs_disassemble
        - Src:             'src/njs_disassembler.c:185,5'
          Dst:             njs_dprintf
    - functionName:    njs_module_require
      functionSourceFile: '/src/njs/src/njs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          245
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - njs_dtoa2
        - njs_module_find
        - njs_string_new
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_module.c:152,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_module.c:157,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_module.c:162,5'
          Dst:             njs_string_new
        - Src:             'src/njs_module.c:164,14'
          Dst:             njs_module_find
        - Src:             'src/njs_module.c:166,9'
          Dst:             njs_throw_error
    - functionName:    njs_module_find
      functionSourceFile: '/src/njs/src/njs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          182
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - njs_djb_hash
        - njs_flathsh_find
        - njs_flathsh_insert
        - njs_memory_error
        - njs_mp_alloc
        - njs_object_value_copy
        - njs_throw_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_module.c:45,20'
          Dst:             njs_djb_hash
        - Src:             'src/njs_module.c:48,11'
          Dst:             njs_flathsh_find
        - Src:             'src/njs_module.c:53,11'
          Dst:             njs_flathsh_find
        - Src:             'src/njs_module.c:61,18'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_module.c:63,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_module.c:70,22'
          Dst:             njs_object_value_copy
        - Src:             'src/njs_module.c:79,15'
          Dst:             njs_flathsh_insert
        - Src:             'src/njs_module.c:81,13'
          Dst:             njs_throw_error
    - functionName:    njs_module_hash_test
      functionSourceFile: '/src/njs/src/njs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_module.c:18,9'
          Dst:             memcmp
    - functionName:    njs_module_add
      functionSourceFile: '/src/njs/src/njs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          137
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_djb_hash
        - njs_flathsh_insert
        - njs_memory_error
        - njs_mp_zalloc
        - njs_name_copy
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_module.c:105,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_module.c:107,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_module.c:111,11'
          Dst:             njs_name_copy
        - Src:             'src/njs_module.c:113,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_module.c:119,20'
          Dst:             njs_djb_hash
        - Src:             'src/njs_module.c:123,11'
          Dst:             njs_flathsh_insert
        - Src:             'src/njs_module.c:125,9'
          Dst:             njs_throw_error
    - functionName:    njs_external_prop_handler
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          227
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_object_value_alloc
        - njs_throw_error
        - njs_value_external_tag
        - njs_vm_external
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_extern.c:209,14'
          Dst:             njs_object_value_alloc
        - Src:             'src/njs_extern.c:219,20'
          Dst:             njs_vm_external
        - Src:             'src/njs_extern.c:221,44'
          Dst:             njs_value_external_tag
        - Src:             'src/njs_extern.c:230,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_extern.c:232,9'
          Dst:             njs_throw_error
    - functionName:    njs_vm_external
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_value_external_tag
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_external_property
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - njs_value_number_set
        - njs_value_undefined_set
        - njs_vm_external
        - njs_vm_prop_magic16
        - njs_vm_prop_magic32
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_extern.c:456,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_extern.c:450,9'
          Dst:             njs_vm_external
        - Src:             'src/njs_extern.c:452,9'
          Dst:             njs_value_undefined_set
        - Src:             'src/njs_extern.c:456,13'
          Dst:             njs_vm_prop_magic16
        - Src:             'src/njs_extern.c:458,33'
          Dst:             njs_vm_prop_magic32
        - Src:             'src/njs_extern.c:459,9'
          Dst:             njs_value_number_set
        - Src:             'src/njs_extern.c:463,35'
          Dst:             njs_vm_prop_magic32
        - Src:             'src/njs_extern.c:464,9'
          Dst:             njs_value_number_set
        - Src:             'src/njs_extern.c:469,9'
          Dst:             njs_vm_prop_magic32
    - functionName:    njs_vm_external_create
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          149
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_object_value_alloc
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_extern.c:394,10'
          Dst:             njs_object_value_alloc
    - functionName:    njs_vm_external_constructor_handler
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          40
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_external_constructor
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          247
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_throw_error
        - njs_vm_bind_handler
        - njs_vm_ctor_push
        - njs_vm_external_constructor_handler
        - njs_vm_external_prototype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_extern.c:333,13'
          Dst:             njs_vm_ctor_push
        - Src:             'src/njs_extern.c:335,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_extern.c:339,16'
          Dst:             njs_vm_external_prototype
        - Src:             'src/njs_extern.c:341,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_extern.c:354,16'
          Dst:             njs_vm_external_prototype
        - Src:             'src/njs_extern.c:356,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_extern.c:372,11'
          Dst:             njs_vm_bind_handler
        - Src:             'src/njs_extern.c:372,11'
          Dst:             njs_vm_external_constructor_handler
    - functionName:    njs_vm_external_prototype
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          134
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - njs_arr_add
        - njs_arr_create
        - njs_external_add
        - njs_external_protos
        - njs_memory_error
        - njs_throw_error
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_extern.c:278,12'
          Dst:             njs_external_protos
        - Src:             'src/njs_extern.c:280,14'
          Dst:             njs_arr_create
        - Src:             'src/njs_extern.c:282,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_extern.c:286,11'
          Dst:             njs_external_add
        - Src:             'src/njs_extern.c:288,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_extern.c:293,22'
          Dst:             njs_arr_create
        - Src:             'src/njs_extern.c:299,10'
          Dst:             njs_arr_add
    - functionName:    njs_external_protos
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_external_protos
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_extern.c:258,18'
          Dst:             njs_external_protos
    - functionName:    njs_external_add
      functionSourceFile: '/src/njs/src/njs_extern.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          680
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - njs_arr_add
        - njs_atom_atomize_key
        - njs_external_add
        - njs_flathsh_unique_insert
        - njs_memory_error
        - njs_mp_zalloc
        - njs_string_create
        - njs_throw_error
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_extern.c:90,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_extern.c:31,12'
          Dst:             njs_arr_add
        - Src:             'src/njs_extern.c:65,19'
          Dst:             njs_string_create
        - Src:             'src/njs_extern.c:65,19'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_extern.c:75,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_extern.c:77,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_extern.c:92,24'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_extern.c:121,24'
          Dst:             strlen
        - Src:             'src/njs_extern.c:123,23'
          Dst:             njs_string_create
        - Src:             'src/njs_extern.c:135,19'
          Dst:             njs_external_add
        - Src:             'src/njs_extern.c:150,21'
          Dst:             njs_throw_error
        - Src:             'src/njs_extern.c:164,21'
          Dst:             njs_throw_error
        - Src:             'src/njs_extern.c:181,5'
          Dst:             njs_memory_error
    - functionName:    njs_number_is_nan
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_number_is_safe_integer
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_number_is_integer
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          88
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_number_is_finite
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_number_to_string_radix
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_dtoa2
        - njs_dtoa_max_len
        - njs_string_new
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:611,11'
          Dst:             njs_dtoa_max_len
        - Src:             'src/njs_number.c:614,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:618,12'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:621,11'
          Dst:             njs_string_new
    - functionName:    njs_number_prototype_to_exponential
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          246
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - njs_dtoa2
        - njs_number_to_string
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:550,13'
          Dst:             njs_type_string
        - Src:             'src/njs_number.c:550,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:558,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_number.c:566,16'
          Dst:             njs_number_to_string
        - Src:             'src/njs_number.c:571,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:588,12'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:591,12'
          Dst:             njs_string_new
    - functionName:    njs_number_to_string
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          393
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:101,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:106,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:109,13'
          Dst:             njs_string_new
        - Src:             'src/njs_number.c:113,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:115,16'
          Dst:             njs_string_new
    - functionName:    njs_number_prototype_to_precision
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          225
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - njs_dtoa2
        - njs_number_to_string
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:497,13'
          Dst:             njs_type_string
        - Src:             'src/njs_number.c:497,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:504,16'
          Dst:             njs_number_to_string
        - Src:             'src/njs_number.c:507,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_number.c:515,16'
          Dst:             njs_number_to_string
        - Src:             'src/njs_number.c:519,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:523,12'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:526,12'
          Dst:             njs_string_new
    - functionName:    njs_number_prototype_to_fixed
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          201
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - njs_dtoa2
        - njs_number_to_string
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:447,13'
          Dst:             njs_type_string
        - Src:             'src/njs_number.c:447,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:453,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_number.c:459,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:466,16'
          Dst:             njs_number_to_string
        - Src:             'src/njs_number.c:469,12'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:472,12'
          Dst:             njs_string_new
    - functionName:    njs_number_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          405
      EdgeCount:       79
      CyclomaticComplexity: 23
      functionsReached:
        - njs_number_to_string
        - njs_number_to_string_radix
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:398,13'
          Dst:             njs_type_string
        - Src:             'src/njs_number.c:398,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:115,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:115,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:115,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_number.c:411,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_number.c:418,20'
          Dst:             njs_number_to_string_radix
        - Src:             'src/njs_number.c:422,12'
          Dst:             njs_number_to_string
    - functionName:    njs_number_prototype_value_of
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:369,13'
          Dst:             njs_type_string
        - Src:             'src/njs_number.c:369,13'
          Dst:             njs_throw_error
    - functionName:    njs_number_constructor
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          324
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - njs_object_value_alloc
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_number.c:193,18'
          Dst:             njs_object_value_alloc
    - functionName:    njs_number_parse_float
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          120
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_atod2
        - njs_string_trim
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:752,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_number.c:757,12'
          Dst:             njs_string_trim
        - Src:             'src/njs_number.c:759,11'
          Dst:             njs_atod2
    - functionName:    njs_number_parse_int
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          388
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - njs_atod2
        - njs_string_to_number
        - njs_string_trim
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:710,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_value_conversion.h:115,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:115,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:115,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_number.c:728,12'
          Dst:             njs_string_trim
        - Src:             'src/njs_number.c:730,11'
          Dst:             njs_atod2
    - functionName:    njs_number_global_is_finite
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          201
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:685,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_number.c:685,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_number.c:685,11'
          Dst:             njs_string_to_number
    - functionName:    njs_number_global_is_nan
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          183
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:667,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_number.c:667,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_number.c:667,11'
          Dst:             njs_string_to_number
    - functionName:    njs_number_to_chain
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          113
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_chb_append0
        - njs_chb_reserve
        - njs_dtoa2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:141,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_number.c:148,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_number.c:152,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_number.c:157,9'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_number.c:162,12'
          Dst:             njs_dtoa2
    - functionName:    njs_int64_to_string
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:128,12'
          Dst:             njs_dtoa2
        - Src:             'src/njs_number.c:130,12'
          Dst:             njs_string_new
    - functionName:    njs_number_hex_parse
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      double
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          148
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_key_to_index
      functionSourceFile: '/src/njs/src/njs_number.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          129
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_key_to_index
        - njs_string_to_index
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_number.c:32,16'
          Dst:             njs_string_to_index
        - Src:             'src/njs_number.c:47,24'
          Dst:             njs_key_to_index
    - functionName:    njs_symbol_prototype_description
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_symbol_description
        - njs_symbol_prototype_value_of
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_symbol.c:286,11'
          Dst:             njs_symbol_prototype_value_of
        - Src:             'src/njs_symbol.c:291,5'
          Dst:             njs_symbol_description
    - functionName:    njs_symbol_prototype_value_of
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_symbol.c:252,13'
          Dst:             njs_type_string
        - Src:             'src/njs_symbol.c:252,13'
          Dst:             njs_throw_error
    - functionName:    njs_symbol_description
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 14
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_symbol_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_symbol_descriptive_string
        - njs_symbol_prototype_value_of
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_symbol.c:271,11'
          Dst:             njs_symbol_prototype_value_of
        - Src:             'src/njs_symbol.c:276,12'
          Dst:             njs_symbol_descriptive_string
    - functionName:    njs_symbol_descriptive_string
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          95
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_string_alloc
        - njs_string_prop
        - njs_symbol_description
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_symbol.c:27,19'
          Dst:             njs_symbol_description
        - Src:             'src/njs_symbol.c:30,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_symbol.c:40,13'
          Dst:             njs_string_alloc
    - functionName:    njs_symbol_key_for
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_rbtree_find
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_symbol.c:160,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_symbol.c:165,37'
          Dst:             njs_rbtree_find
    - functionName:    njs_symbol_for
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          312
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - njs_atom_symbol_add
        - njs_memory_error
        - njs_mp_alloc
        - njs_rbtree_insert
        - njs_string_cmp
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_symbol.c:106,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_symbol.c:119,16'
          Dst:             njs_string_cmp
        - Src:             'src/njs_symbol.c:128,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_symbol.c:130,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_symbol.c:137,11'
          Dst:             njs_atom_symbol_add
        - Src:             'src/njs_symbol.c:144,5'
          Dst:             njs_rbtree_insert
    - functionName:    njs_symbol_rbtree_cmp
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_symbol_constructor
      functionSourceFile: '/src/njs/src/njs_symbol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          170
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - njs_atom_symbol_add
        - njs_memory_error
        - njs_mp_alloc
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_symbol.c:61,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_symbol.c:69,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_symbol.c:76,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_symbol.c:78,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_symbol.c:85,11'
          Dst:             njs_atom_symbol_add
    - functionName:    njs_string_from_char_code
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1470
      functionLinenumberEnd: 1576
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         101
      ICount:          732
      EdgeCount:       136
      CyclomaticComplexity: 37
      functionsReached:
        - njs_string_alloc
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_utf16_decode
        - njs_utf16_encode
        - njs_utf8_encode
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_string.c:1515,15'
          Dst:             njs_utf16_encode
        - Src:             'src/njs_string.c:1518,14'
          Dst:             njs_utf16_decode
        - Src:             'src/njs_string.c:1537,9'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:1553,15'
          Dst:             njs_utf16_encode
        - Src:             'src/njs_string.c:1556,14'
          Dst:             njs_utf16_decode
        - Src:             'src/njs_string.c:1566,13'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_string.c:1573,5'
          Dst:             njs_throw_error
    - functionName:    njs_string_to_number
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3334
      functionLinenumberEnd: 3375
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          233
      EdgeCount:       49
      CyclomaticComplexity: 12
      functionsReached:
        - njs_atod2
        - njs_string_trim
      functionUses:    74
      BranchProfiles:
        - Branch String:   'src/njs_str.h:47,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_string.c:3342,12'
          Dst:             njs_string_trim
        - Src:             'src/njs_string.c:3360,11'
          Dst:             njs_atod2
    - functionName:    njs_string_alloc
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          98
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_string_data_init
        - njs_string_data_size
        - njs_throw_error
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:196,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:204,13'
          Dst:             njs_string_data_size
        - Src:             'src/njs_string.c:206,14'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_string.c:211,9'
          Dst:             njs_string_data_init
        - Src:             'src/njs_string.c:216,5'
          Dst:             njs_memory_error
    - functionName:    njs_string_data_size
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_data_init
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_trim
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2204
      functionLinenumberEnd: 2316
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         128
      ICount:          643
      EdgeCount:       141
      CyclomaticComplexity: 15
      functionsReached:
        - njs_string_prop
        - njs_utf8_decode
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/njs_str.h:47,5'
          Branch Sides:    []
        - Branch String:   'src/njs_str.h:47,5'
          Branch Sides:    []
        - Branch String:   'src/njs_utf8.h:178,5'
          Branch Sides:    []
        - Branch String:   'src/njs_utf8.h:178,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_string.c:2211,5'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2264,22'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:2289,22'
          Dst:             njs_utf8_decode
    - functionName:    njs_string_prop
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          187
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    69
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:231,16'
          Dst:             njs_string_new
    - functionName:    njs_string_new
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_string_alloc
      functionUses:    219
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:145,9'
          Dst:             njs_string_alloc
    - functionName:    njs_string_match_multiple
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2690
      functionLinenumberEnd: 2784
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          464
      EdgeCount:       72
      CyclomaticComplexity: 18
      functionsReached:
        - njs_array_alloc
        - njs_array_expand
        - njs_regex_capture
        - njs_regex_is_valid
        - njs_regexp_match
        - njs_string_new
        - njs_string_prop
        - njs_throw_error
        - njs_utf8_stream_length
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_string.h:209,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_string.c:2703,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2716,9'
          Dst:             njs_regex_is_valid
        - Src:             'src/njs_string.c:2718,17'
          Dst:             njs_array_alloc
        - Src:             'src/njs_string.c:2727,19'
          Dst:             njs_regexp_match
        - Src:             'src/njs_string.c:2734,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2739,19'
          Dst:             njs_array_expand
        - Src:             'src/njs_string.c:2744,18'
          Dst:             njs_regex_capture
        - Src:             'src/njs_string.c:2745,18'
          Dst:             njs_regex_capture
        - Src:             'src/njs_string.h:215,18'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_string.c:2770,19'
          Dst:             njs_string_new
    - functionName:    njs_string_index_of
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1582
      functionLinenumberEnd: 1631
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          272
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - memcmp
        - njs_string_utf8_offset
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1604,21'
          Dst:             memcmp
        - Src:             'src/njs_string.c:1615,23'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:1620,21'
          Dst:             memcmp
    - functionName:    njs_string_utf8_offset
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1961
      functionLinenumberEnd: 1979
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          158
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - njs_string_utf8_offset_map_init
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1969,13'
          Dst:             njs_string_utf8_offset_map_init
    - functionName:    njs_string_utf8_offset_map_init
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2032
      functionLinenumberEnd: 2056
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          141
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_slice_args
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1100
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          326
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - njs_value_to_integer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1040,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:1066,23'
          Dst:             njs_value_to_integer
    - functionName:    njs_string_slice_prop
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1020
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_string_prop
        - njs_string_slice_args
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1021,28'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1023,12'
          Dst:             njs_string_slice_args
    - functionName:    njs_string_prototype_iterator_obj
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3317
      functionLinenumberEnd: 3329
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          116
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_array_iterator_create
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:3323,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:3323,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3328,12'
          Dst:             njs_array_iterator_create
    - functionName:    njs_string_prototype_replace
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3102
      functionLinenumberEnd: 3310
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         120
      ICount:          1148
      EdgeCount:       164
      CyclomaticComplexity: 46
      functionsReached:
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_dtoa2
        - njs_function_call2
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_alloc
        - njs_string_create_chb
        - njs_string_get_substitution
        - njs_string_index_of
        - njs_string_new
        - njs_string_prop
        - njs_string_utf8_offset
        - njs_throw_error
        - njs_type_string
        - njs_value_method
        - njs_value_property
        - njs_value_to_string
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:3119,9'
          Dst:             njs_type_string
        - Src:             'src/njs_string.c:3119,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:3128,15'
          Dst:             njs_value_method
        - Src:             'src/njs_string.c:3141,23'
          Dst:             njs_value_property
        - Src:             'src/njs_string.c:3147,23'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:3152,17'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:3157,21'
          Dst:             njs_type_string
        - Src:             'src/njs_string.c:3157,21'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:3164,20'
          Dst:             njs_function_call2
        - Src:             'src/njs_string.c:3169,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3174,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3182,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3192,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3193,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3195,11'
          Dst:             njs_string_index_of
        - Src:             'src/njs_string.c:3203,19'
          Dst:             njs_string_get_substitution
        - Src:             'src/njs_string.c:3212,19'
          Dst:             njs_function_call2
        - Src:             'src/njs_string.c:3220,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3226,15'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:3228,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3233,13'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:3245,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_string.c:3245,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_string.c:3245,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_string.c:3245,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_string.c:3251,19'
          Dst:             njs_string_get_substitution
        - Src:             'src/njs_string.c:3260,19'
          Dst:             njs_function_call2
        - Src:             'src/njs_string.c:3268,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3274,15'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:3275,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3277,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3278,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3292,19'
          Dst:             njs_string_index_of
        - Src:             'src/njs_string.c:3297,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3299,11'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_string.c:3307,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_string_get_substitution
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2947
      functionLinenumberEnd: 3096
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         147
      ICount:          1264
      EdgeCount:       190
      CyclomaticComplexity: 45
      functionsReached:
        - njs_atom_atomize_key
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_dtoa2
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_create
        - njs_string_create_chb
        - njs_string_new
        - njs_string_prop
        - njs_string_utf8_offset
        - njs_value_property
        - njs_value_to_string
        - njs_vm_memory_pool
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_string.c:2980,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:2957,5'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:2961,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_string.c:2961,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_string.c:2961,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_string.c:2961,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_string.c:2971,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:2975,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:2982,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:2987,20'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2988,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:2993,20'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2994,17'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:2995,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3000,22'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3001,20'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3003,20'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:3005,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3013,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3020,19'
          Dst:             njs_string_create
        - Src:             'src/njs_string.c:3027,19'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_string.c:3027,19'
          Dst:             njs_value_property
        - Src:             'src/njs_string.c:3033,23'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:3038,17'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:3039,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3060,21'
          Dst:             njs_chb_append0
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:3068,21'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:3069,21'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3075,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3083,11'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_string.c:3093,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_string_create_chb
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          280
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - njs_chb_join_to
        - njs_memory_error
        - njs_string_alloc
        - njs_throw_error
        - njs_utf8_stream_length
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:111,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:114,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_chb.h:129,15'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_string.c:122,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:126,9'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:131,5'
          Dst:             njs_chb_join_to
    - functionName:    njs_string_create
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_string_decode_utf8
        - njs_string_new
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:92,16'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:98,12'
          Dst:             njs_string_decode_utf8
    - functionName:    njs_string_decode_utf8
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1289
      functionLinenumberEnd: 1302
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_decode_utf8
        - njs_decode_utf8_length
        - njs_string_alloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1293,14'
          Dst:             njs_decode_utf8_length
        - Src:             'src/njs_string.c:1294,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:1297,9'
          Dst:             njs_decode_utf8
    - functionName:    njs_decode_utf8_length
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1277
      functionLinenumberEnd: 1283
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_utf8_stream_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1282,12'
          Dst:             njs_utf8_stream_length
    - functionName:    njs_decode_utf8
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1265
      functionLinenumberEnd: 1272
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_utf8_stream_encode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1270,12'
          Dst:             njs_utf8_stream_encode
    - functionName:    njs_string_prototype_split
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2790
      functionLinenumberEnd: 2940
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         113
      ICount:          907
      EdgeCount:       151
      CyclomaticComplexity: 40
      functionsReached:
        - memcmp
        - njs_array_alloc
        - njs_array_expand
        - njs_array_string_add
        - njs_function_call2
        - njs_string_prop
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_type_string
        - njs_utf8_stream_length
        - njs_value_method
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_string.h:209,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_string.c:2807,9'
          Dst:             njs_type_string
        - Src:             'src/njs_string.c:2807,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2816,15'
          Dst:             njs_value_method
        - Src:             'src/njs_string.c:2826,20'
          Dst:             njs_function_call2
        - Src:             'src/njs_string.c:2831,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2836,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_string.c:2852,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2865,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2866,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2891,17'
          Dst:             memcmp
        - Src:             'src/njs_string.h:215,18'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_string.c:2914,15'
          Dst:             njs_array_string_add
        - Src:             'src/njs_string.c:2928,13'
          Dst:             njs_array_expand
    - functionName:    njs_string_prototype_match
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2625
      functionLinenumberEnd: 2684
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          570
      EdgeCount:       85
      CyclomaticComplexity: 21
      functionsReached:
        - njs_dtoa2
        - njs_regexp_create
        - njs_regexp_prototype_exec
        - njs_string_match_multiple
        - njs_string_new
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:2631,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2631,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2647,24'
          Dst:             njs_string_match_multiple
        - Src:             'src/njs_string.c:2661,23'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:2666,17'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:2670,13'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:2676,11'
          Dst:             njs_regexp_create
        - Src:             'src/njs_string.c:2683,12'
          Dst:             njs_regexp_prototype_exec
    - functionName:    njs_string_prototype_search
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2545
      functionLinenumberEnd: 2619
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          324
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - njs_regex_capture
        - njs_regex_is_valid
        - njs_regexp_match
        - njs_regexp_pattern_create
        - njs_string_index
        - njs_string_prop
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_string.c:2563,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_string.c:2553,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2553,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2574,23'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2580,20'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2583,27'
          Dst:             njs_regexp_pattern_create
        - Src:             'src/njs_string.c:2597,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2601,13'
          Dst:             njs_regex_is_valid
        - Src:             'src/njs_string.c:2602,19'
          Dst:             njs_regexp_match
        - Src:             'src/njs_string.c:2605,21'
          Dst:             njs_regex_capture
        - Src:             'src/njs_string.c:2606,25'
          Dst:             njs_string_index
    - functionName:    njs_string_index
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1989
      functionLinenumberEnd: 2027
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          235
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - njs_string_utf8_offset_map_init
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:2006,13'
          Dst:             njs_string_utf8_offset_map_init
    - functionName:    njs_string_prototype_pad
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2420
      functionLinenumberEnd: 2539
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          527
      EdgeCount:       90
      CyclomaticComplexity: 26
      functionsReached:
        - njs_string_alloc
        - njs_string_prop
        - njs_string_utf8_offset
        - njs_throw_error
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:2430,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2430,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2435,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2443,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:2459,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2472,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2485,22'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2500,19'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:2509,13'
          Dst:             njs_string_alloc
    - functionName:    njs_string_prototype_repeat
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2354
      functionLinenumberEnd: 2414
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          344
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - njs_dtoa2
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_throw_error
        - njs_type_string
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:2365,9'
          Dst:             njs_type_string
        - Src:             'src/njs_string.c:2365,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2370,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2375,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:2381,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2385,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:2388,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:2395,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2402,9'
          Dst:             njs_string_alloc
    - functionName:    njs_string_prototype_trim
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2322
      functionLinenumberEnd: 2348
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          253
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - njs_dtoa2
        - njs_string_new
        - njs_string_trim
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:2329,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2329,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2334,12'
          Dst:             njs_string_trim
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:2342,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:2346,12'
          Dst:             njs_string_new
    - functionName:    njs_string_prototype_to_upper_case
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2138
      functionLinenumberEnd: 2198
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          313
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - njs_string_alloc
        - njs_string_prop
        - njs_throw_error
        - njs_utf8_encode
        - njs_utf8_upper_case
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:2146,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2146,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2151,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2155,13'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:2177,20'
          Dst:             njs_utf8_upper_case
        - Src:             'src/njs_string.c:2182,13'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:2191,20'
          Dst:             njs_utf8_upper_case
        - Src:             'src/njs_string.c:2192,17'
          Dst:             njs_utf8_encode
    - functionName:    njs_string_prototype_to_lower_case
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2067
      functionLinenumberEnd: 2127
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          313
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - njs_string_alloc
        - njs_string_prop
        - njs_throw_error
        - njs_utf8_encode
        - njs_utf8_lower_case
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:2075,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:2075,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:2080,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:2084,13'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:2106,20'
          Dst:             njs_utf8_lower_case
        - Src:             'src/njs_string.c:2111,13'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:2120,20'
          Dst:             njs_utf8_lower_case
        - Src:             'src/njs_string.c:2121,17'
          Dst:             njs_utf8_encode
    - functionName:    njs_string_prototype_starts_or_ends_with
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1863
      functionLinenumberEnd: 1952
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          495
      EdgeCount:       99
      CyclomaticComplexity: 28
      functionsReached:
        - memcmp
        - njs_string_prop
        - njs_string_utf8_offset
        - njs_throw_error
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1873,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:1873,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1881,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1887,21'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1895,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:1910,18'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1934,13'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:1937,16'
          Dst:             memcmp
    - functionName:    njs_string_prototype_includes
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1785
      functionLinenumberEnd: 1857
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          431
      EdgeCount:       75
      CyclomaticComplexity: 22
      functionsReached:
        - memcmp
        - njs_string_prop
        - njs_string_utf8_offset
        - njs_throw_error
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1792,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:1792,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1803,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1809,25'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1815,23'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:1836,18'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1840,17'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:1845,21'
          Dst:             memcmp
    - functionName:    njs_string_prototype_last_index_of
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1682
      functionLinenumberEnd: 1779
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          606
      EdgeCount:       124
      CyclomaticComplexity: 34
      functionsReached:
        - memcmp
        - njs_string_prop
        - njs_string_to_number
        - njs_string_utf8_offset
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1693,9'
          Dst:             njs_type_string
        - Src:             'src/njs_string.c:1693,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:1698,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1704,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1709,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_string.c:1709,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_string.c:1709,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_string.c:1721,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1725,21'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1745,17'
          Dst:             memcmp
        - Src:             'src/njs_string.c:1761,13'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:1764,40'
          Dst:             memcmp
    - functionName:    njs_string_prototype_index_of
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1637
      functionLinenumberEnd: 1676
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          233
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - njs_string_index_of
        - njs_string_prop
        - njs_throw_error
        - njs_type_string
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1646,9'
          Dst:             njs_type_string
        - Src:             'src/njs_string.c:1646,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:1651,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1657,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1663,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:1668,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1669,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1673,28'
          Dst:             njs_string_index_of
    - functionName:    njs_string_prototype_char_code_at
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          260
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - njs_string_prop
        - njs_string_utf8_offset
        - njs_throw_error
        - njs_utf8_decode
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1180,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:1180,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:1185,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:1187,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:1205,17'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.c:1206,16'
          Dst:             njs_utf8_decode
    - functionName:    njs_string_prototype_char_at
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 984
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          181
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_string_prop
        - njs_string_slice
        - njs_throw_error
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:991,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:991,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:996,27'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:998,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:1013,12'
          Dst:             njs_string_slice
    - functionName:    njs_string_slice
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1152
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          157
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_dtoa2
        - njs_string_new
        - njs_string_slice_string_prop
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1155,5'
          Dst:             njs_string_slice_string_prop
        - Src:             'src/njs_string.c:1158,16'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:1161,5'
          Dst:             njs_string_new
    - functionName:    njs_string_slice_string_prop
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1146
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          206
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - njs_string_utf8_offset
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1123,21'
          Dst:             njs_string_utf8_offset
    - functionName:    njs_string_prototype_substr
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 906
      functionLinenumberEnd: 978
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          399
      EdgeCount:       88
      CyclomaticComplexity: 25
      functionsReached:
        - njs_string_prop
        - njs_string_slice
        - njs_throw_error
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:913,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:913,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:918,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:927,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:951,27'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:977,12'
          Dst:             njs_string_slice
    - functionName:    njs_string_prototype_substring
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          392
      EdgeCount:       84
      CyclomaticComplexity: 24
      functionsReached:
        - njs_string_prop
        - njs_string_slice
        - njs_throw_error
        - njs_value_to_integer
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:835,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:835,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:840,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:849,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:871,23'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_string.c:899,12'
          Dst:             njs_string_slice
    - functionName:    njs_string_prototype_slice
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 806
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          131
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_string_slice
        - njs_string_slice_prop
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:811,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:811,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:816,11'
          Dst:             njs_string_slice_prop
        - Src:             'src/njs_string.c:821,12'
          Dst:             njs_string_slice
    - functionName:    njs_string_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_string_prototype_value_of
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:621,12'
          Dst:             njs_string_prototype_value_of
    - functionName:    njs_string_prototype_value_of
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:605,13'
          Dst:             njs_type_string
        - Src:             'src/njs_string.c:605,13'
          Dst:             njs_throw_error
    - functionName:    njs_string_constructor
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          256
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - njs_dtoa2
        - njs_object_value_alloc
        - njs_string_new
        - njs_symbol_descriptive_string
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:463,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:470,24'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_string.c:473,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:481,18'
          Dst:             njs_object_value_alloc
    - functionName:    njs_string_atob
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4036
      functionLinenumberEnd: 4141
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         77
      ICount:          626
      EdgeCount:       98
      CyclomaticComplexity: 23
      functionsReached:
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_reserve
        - njs_dtoa2
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_create_chb
        - njs_string_new
        - njs_throw_error
        - njs_utf8_encode
        - njs_value_to_string
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_string.c:4078,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_string.c:4048,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:4056,5'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:4063,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_string.c:4063,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_string.c:4063,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_string.c:4063,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_string.c:4065,9'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_string.c:4066,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_string.c:4107,13'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_string.c:4124,9'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:4125,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:4129,11'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_string.c:4130,5'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_string.c:4136,5'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_string.c:4138,5'
          Dst:             njs_throw_error
    - functionName:    njs_string_btoa
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3941
      functionLinenumberEnd: 4022
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          339
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - njs_string_alloc
        - njs_string_prop
        - njs_throw_error
        - njs_utf8_decode
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:3953,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3958,11'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3967,11'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:3973,15'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3974,15'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3975,15'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3990,15'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:4003,19'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:4019,5'
          Dst:             njs_throw_error
    - functionName:    njs_string_decode_uri
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3735
      functionLinenumberEnd: 3935
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         100
      ICount:          881
      EdgeCount:       137
      CyclomaticComplexity: 39
      functionsReached:
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_join_to
        - njs_chb_reserve
        - njs_dtoa2
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_throw_error
        - njs_utf8_decode
        - njs_utf8_encode
        - njs_value_to_string
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:3808,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:3813,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3823,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3834,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_string.c:3834,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_string.c:3834,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_string.c:3834,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_string.c:3840,14'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3847,19'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_string.c:3849,17'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_string.c:3859,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_string.c:3863,23'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_string.c:3886,18'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3895,14'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3900,15'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_string.c:3902,13'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_string.c:3911,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_string.c:3920,11'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:3925,5'
          Dst:             njs_chb_join_to
        - Src:             'src/njs_string.c:3926,5'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_string.c:3932,5'
          Dst:             njs_throw_error
    - functionName:    njs_string_encode_uri
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3530
      functionLinenumberEnd: 3684
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          757
      EdgeCount:       110
      CyclomaticComplexity: 31
      functionsReached:
        - njs_dtoa2
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_throw_error
        - njs_utf8_decode
        - njs_utf8_encode
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:3579,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:3584,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:3593,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:3612,18'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3625,30'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3648,11'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:3665,14'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3668,22'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_string.c:3672,9'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_string.c:3681,5'
          Dst:             njs_throw_error
    - functionName:    njs_string_instance_length
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          271
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:544,13'
          Dst:             njs_string_new
    - functionName:    njs_string_to_index
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3380
      functionLinenumberEnd: 3409
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          157
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - memcmp
        - njs_atod2
        - njs_dtoa2
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:3401,11'
          Dst:             njs_atod2
        - Src:             'src/njs_string.c:3403,11'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:3404,24'
          Dst:             memcmp
    - functionName:    njs_string_decode_base64url
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1462
      functionLinenumberEnd: 1463
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_string_decode_base64_core
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1463,12'
          Dst:             njs_string_decode_base64_core
    - functionName:    njs_string_decode_base64_core
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1427
      functionLinenumberEnd: 1449
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          180
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_decode_base64_core
        - njs_decode_base64_length_core
        - njs_dtoa2
        - njs_string_alloc
        - njs_string_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1434,14'
          Dst:             njs_decode_base64_length_core
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:1437,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:1441,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:1446,5'
          Dst:             njs_decode_base64_core
    - functionName:    njs_decode_base64_length_core
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1361
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          96
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_decode_base64_core
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1382
      functionLinenumberEnd: 1407
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          182
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_decode_base64
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1454
      functionLinenumberEnd: 1455
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_string_decode_base64_core
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1455,12'
          Dst:             njs_string_decode_base64_core
    - functionName:    njs_decode_base64url
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1419
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_decode_base64_core
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1420,5'
          Dst:             njs_decode_base64_core
    - functionName:    njs_decode_base64
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1412
      functionLinenumberEnd: 1414
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_decode_base64_core
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1413,5'
          Dst:             njs_decode_base64_core
    - functionName:    njs_decode_base64url_length
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1374
      functionLinenumberEnd: 1375
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_decode_base64_length_core
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1375,12'
          Dst:             njs_decode_base64_length_core
    - functionName:    njs_decode_base64_length
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1367
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_decode_base64_length_core
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1368,12'
          Dst:             njs_decode_base64_length_core
    - functionName:    njs_string_decode_hex
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1332
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          190
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_decode_hex
        - njs_decode_hex_length
        - njs_dtoa2
        - njs_string_alloc
        - njs_string_new
        - njs_string_truncate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:1311,14'
          Dst:             njs_decode_hex_length
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:1314,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:1318,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:1325,5'
          Dst:             njs_decode_hex
        - Src:             'src/njs_string.c:1328,9'
          Dst:             njs_string_truncate
    - functionName:    njs_decode_hex_length
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_decode_hex
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1232
      functionLinenumberEnd: 1260
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          159
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_truncate
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_prototype_concat
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 628
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         78
      ICount:          588
      EdgeCount:       103
      CyclomaticComplexity: 27
      functionsReached:
        - njs_dtoa2
        - njs_string_alloc
        - njs_string_prop
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:642,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_string.c:672,22'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:710,23'
          Dst:             njs_value_to_string
        - Src:             'src/njs_string.c:717,13'
          Dst:             njs_string_prop
        - Src:             'src/njs_string.c:724,9'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:753,26'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:772,13'
          Dst:             njs_string_prop
    - functionName:    njs_string_cmp
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 574
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          387
      EdgeCount:       53
      CyclomaticComplexity: 12
      functionsReached:
        - memcmp
        - njs_dtoa2
        - njs_string_new
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:578,5'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:579,5'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:581,11'
          Dst:             memcmp
    - functionName:    njs_string_eq
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          366
      EdgeCount:       49
      CyclomaticComplexity: 11
      functionsReached:
        - memcmp
        - njs_dtoa2
        - njs_string_new
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:561,5'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:562,5'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:568,13'
          Dst:             memcmp
    - functionName:    njs_string_copy
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_encode_base64url
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_encode_base64_core
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:335,5'
          Dst:             njs_encode_base64_core
    - functionName:    njs_encode_base64_core
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          230
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_base64url
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          188
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_dtoa2
        - njs_encode_base64url
        - njs_string_alloc
        - njs_string_new
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:423,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:436,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:441,5'
          Dst:             njs_encode_base64url
    - functionName:    njs_string_base64
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          169
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_dtoa2
        - njs_encode_base64
        - njs_encode_base64_length
        - njs_string_alloc
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:398,14'
          Dst:             njs_encode_base64_length
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_string.c:401,9'
          Dst:             njs_string_new
        - Src:             'src/njs_string.c:405,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:410,5'
          Dst:             njs_encode_base64
    - functionName:    njs_encode_base64_length
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_encode_base64
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_encode_base64_core
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:313,5'
          Dst:             njs_encode_base64_core
    - functionName:    njs_encode_hex
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          68
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_encode_hex_length
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_string_hex
      functionSourceFile: '/src/njs/src/njs_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_encode_hex
        - njs_encode_hex_length
        - njs_string_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_string.c:261,14'
          Dst:             njs_encode_hex_length
        - Src:             'src/njs_string.c:263,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_string.c:265,9'
          Dst:             njs_encode_hex
    - functionName:    njs_object_prototype_is_prototype_of
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2729
      functionLinenumberEnd: 2766
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          159
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2740,9'
          Dst:             njs_throw_error
    - functionName:    njs_object_prototype_prop_is_enumerable
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2680
      functionLinenumberEnd: 2723
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         91
      ICount:          856
      EdgeCount:       115
      CyclomaticComplexity: 26
      functionsReached:
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_object_to_string
        - njs_property_query
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.c:2707,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:2698,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:2698,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:2705,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:2705,11'
          Dst:             njs_property_query
    - functionName:    njs_object_to_string
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2523
      functionLinenumberEnd: 2609
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          542
      EdgeCount:       88
      CyclomaticComplexity: 23
      functionsReached:
        - njs_dtoa2
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_value_property
        - njs_value_to_object
      functionUses:    15
      BranchProfiles:
        - Branch String:   'src/njs_object.c:2561,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.c:2531,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:2537,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_object.c:2585,11'
          Dst:             njs_value_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.c:2591,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:2596,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_object.c:2598,9'
          Dst:             njs_string_alloc
    - functionName:    njs_object_prototype_value_of
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2496
      functionLinenumberEnd: 2510
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2502,13'
          Dst:             njs_value_to_object
    - functionName:    njs_object_prototype_has_own_property
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2615
      functionLinenumberEnd: 2674
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         168
      ICount:          1567
      EdgeCount:       216
      CyclomaticComplexity: 50
      functionsReached:
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_object_to_string
        - njs_property_query
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.c:2661,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:2633,13'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:2633,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:2643,13'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:2643,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:2659,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:2659,11'
          Dst:             njs_property_query
    - functionName:    njs_object_is
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2119
      functionLinenumberEnd: 2123
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          252
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - njs_string_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.h:1157,12'
          Dst:             njs_string_eq
    - functionName:    njs_object_assign
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2047
      functionLinenumberEnd: 2113
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          298
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - njs_array_destroy
        - njs_atom_atomize_key
        - njs_property_query
        - njs_value_own_enumerate
        - njs_value_property
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2057,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_object.c:2067,17'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_object.c:2080,19'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:2080,19'
          Dst:             njs_property_query
        - Src:             'src/njs_object.c:2090,19'
          Dst:             njs_value_property
        - Src:             'src/njs_object.c:2095,19'
          Dst:             njs_value_property_set
        - Src:             'src/njs_object.c:2101,9'
          Dst:             njs_array_destroy
        - Src:             'src/njs_object.c:2110,5'
          Dst:             njs_array_destroy
    - functionName:    njs_object_is_extensible
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2028
      functionLinenumberEnd: 2041
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          87
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_object_prevent_extensions
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2007
      functionLinenumberEnd: 2022
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          65
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_object_test_integrity_level
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1943
      functionLinenumberEnd: 2001
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          364
      EdgeCount:       75
      CyclomaticComplexity: 17
      functionsReached:
        - njs_flathsh_each
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:1978,15'
          Dst:             njs_flathsh_each
    - functionName:    njs_object_set_integrity_level
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1869
      functionLinenumberEnd: 1937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          319
      EdgeCount:       61
      CyclomaticComplexity: 13
      functionsReached:
        - njs_array_convert_to_slow_array
        - njs_array_length_redefine
        - njs_flathsh_each
        - njs_throw_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:1891,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1899,15'
          Dst:             njs_array_convert_to_slow_array
        - Src:             'src/njs_object.c:1904,15'
          Dst:             njs_array_length_redefine
        - Src:             'src/njs_object.c:1918,15'
          Dst:             njs_flathsh_each
    - functionName:    njs_object_set_prototype_of
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1823
      functionLinenumberEnd: 1861
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          182
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_object_set_prototype
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1829,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:1829,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1836,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:1836,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1846,11'
          Dst:             njs_object_set_prototype
        - Src:             'src/njs_object.c:1853,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1857,9'
          Dst:             njs_throw_error
    - functionName:    njs_object_set_prototype
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2310
      functionLinenumberEnd: 2340
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_object_get_own_property
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1761
      functionLinenumberEnd: 1782
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          96
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
        - njs_value_own_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1768,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:1768,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1774,13'
          Dst:             njs_value_own_enumerate
    - functionName:    njs_object_get_own_property_descriptors
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1685
      functionLinenumberEnd: 1755
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          228
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_array_destroy
        - njs_flathsh_unique_insert
        - njs_object_alloc
        - njs_object_prop_descriptor
        - njs_throw_error
        - njs_type_string
        - njs_value_own_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1697,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:1697,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1703,13'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_object.c:1711,19'
          Dst:             njs_object_alloc
        - Src:             'src/njs_object.c:1723,15'
          Dst:             njs_object_prop_descriptor
        - Src:             'src/njs_object.c:1731,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object.c:1733,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1752,5'
          Dst:             njs_array_destroy
    - functionName:    njs_object_alloc
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:44,14'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_object.c:60,5'
          Dst:             njs_memory_error
    - functionName:    njs_object_get_own_property_descriptor
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1665
      functionLinenumberEnd: 1679
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_object_prop_descriptor
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1671,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:1671,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1678,12'
          Dst:             njs_object_prop_descriptor
    - functionName:    njs_object_define_properties
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1659
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          321
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - njs_array_destroy
        - njs_atom_atomize_key
        - njs_object_prop_define
        - njs_property_query
        - njs_throw_error
        - njs_value_own_enumerate
        - njs_value_property
        - njs_value_to_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1607,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1612,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_object.c:1617,12'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_object.c:1628,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:1628,15'
          Dst:             njs_property_query
        - Src:             'src/njs_object.c:1639,15'
          Dst:             njs_value_property
        - Src:             'src/njs_object.c:1644,15'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_object.c:1656,5'
          Dst:             njs_array_destroy
    - functionName:    njs_object_define_property
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1559
      functionLinenumberEnd: 1592
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          803
      EdgeCount:       116
      CyclomaticComplexity: 29
      functionsReached:
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_object_prop_define
        - njs_object_to_string
        - njs_string_new
        - njs_throw_error
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:1564,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1571,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:1583,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:1583,11'
          Dst:             njs_object_prop_define
    - functionName:    njs_object_entries
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          93
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
        - njs_value_own_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:365,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:365,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:371,13'
          Dst:             njs_value_own_enumerate
    - functionName:    njs_object_values
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          93
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
        - njs_value_own_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:337,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:337,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:343,13'
          Dst:             njs_value_own_enumerate
    - functionName:    njs_object_keys
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          93
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
        - njs_value_own_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:309,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:309,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:315,12'
          Dst:             njs_value_own_enumerate
    - functionName:    njs_object_create
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          198
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_object_alloc
        - njs_object_define_properties
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:264,18'
          Dst:             njs_object_alloc
        - Src:             'src/njs_object.c:283,20'
          Dst:             njs_object_define_properties
        - Src:             'src/njs_object.c:292,5'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:292,5'
          Dst:             njs_throw_error
    - functionName:    njs_object_exist_in_proto
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_flathsh_unique_find
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:391,15'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_object.c:403,15'
          Dst:             njs_flathsh_unique_find
    - functionName:    njs_get_own_ordered_keys
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         174
      ICount:          1170
      EdgeCount:       237
      CyclomaticComplexity: 65
      functionsReached:
        - njs_array_add
        - njs_array_alloc
        - njs_array_destroy
        - njs_array_expand
        - njs_array_indices_handler_nums
        - njs_dtoa2
        - njs_flathsh_each
        - njs_flathsh_unique_find
        - njs_object_exist_in_proto
        - njs_qsort
        - njs_string_new
        - njs_string_to_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:928,20'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:933,20'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:948,15'
          Dst:             njs_flathsh_each
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.c:955,15'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:966,20'
          Dst:             njs_object_exist_in_proto
        - Src:             'src/njs_object.c:971,15'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_object.c:980,19'
          Dst:             njs_string_to_index
        - Src:             'src/njs_object.c:982,17'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:982,17'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:986,23'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1002,19'
          Dst:             njs_string_to_index
        - Src:             'src/njs_object.c:1008,21'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1008,21'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1021,15'
          Dst:             njs_flathsh_each
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.c:1028,15'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:1042,20'
          Dst:             njs_object_exist_in_proto
        - Src:             'src/njs_object.c:1047,15'
          Dst:             njs_string_to_index
        - Src:             'src/njs_object.c:1050,19'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1057,19'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_object.c:1062,17'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1062,17'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1069,21'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1069,21'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1077,9'
          Dst:             njs_qsort
        - Src:             'src/njs_object.c:1077,9'
          Dst:             njs_array_indices_handler_nums
        - Src:             'src/njs_object.c:1082,15'
          Dst:             njs_array_expand
        - Src:             'src/njs_object.c:1094,15'
          Dst:             njs_array_expand
        - Src:             'src/njs_object.c:1105,5'
          Dst:             njs_array_destroy
        - Src:             'src/njs_object.c:1106,5'
          Dst:             njs_array_destroy
    - functionName:    njs_object_own_enumerate_object
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1188
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          300
      EdgeCount:       49
      CyclomaticComplexity: 12
      functionsReached:
        - njs_array_add
        - njs_array_alloc
        - njs_array_destroy
        - njs_atom_atomize_key
        - njs_get_own_ordered_keys
        - njs_string_copy
        - njs_value_property
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_object.c:1121,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:1123,15'
          Dst:             njs_get_own_ordered_keys
        - Src:             'src/njs_object.c:1132,24'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:1137,15'
          Dst:             njs_get_own_ordered_keys
        - Src:             'src/njs_object.c:1146,19'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:1146,19'
          Dst:             njs_value_property
        - Src:             'src/njs_object.c:1149,17'
          Dst:             njs_array_destroy
        - Src:             'src/njs_object.c:1154,25'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:1159,17'
          Dst:             njs_string_copy
        - Src:             'src/njs_object.c:1165,19'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:1168,21'
          Dst:             njs_array_destroy
        - Src:             'src/njs_object.c:1175,9'
          Dst:             njs_array_destroy
        - Src:             'src/njs_object.c:1185,5'
          Dst:             njs_array_destroy
    - functionName:    njs_object_enumerate_object
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 884
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          201
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - njs_object_enumerate_array
        - njs_object_enumerate_string
        - njs_object_enumerate_typed_array
        - njs_object_own_enumerate_object
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_object.c:477,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:867,11'
          Dst:             njs_object_own_enumerate_object
        - Src:             'src/njs_object.c:875,15'
          Dst:             njs_object_enumerate_array
        - Src:             'src/njs_object.c:875,15'
          Dst:             njs_object_enumerate_typed_array
        - Src:             'src/njs_object.c:875,15'
          Dst:             njs_object_enumerate_string
        - Src:             'src/njs_object.c:875,15'
          Dst:             njs_object_own_enumerate_object
    - functionName:    njs_object_enumerate_array
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          465
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - njs_array_add
        - njs_array_alloc
        - njs_array_expand
        - njs_string_alloc
        - njs_u32toa
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_object.c:587,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:591,23'
          Dst:             njs_array_expand
        - Src:             'src/njs_object.c:596,23'
          Dst:             njs_string_alloc
        - Src:             'src/njs_object.c:596,23'
          Dst:             njs_u32toa
        - Src:             'src/njs_object.c:611,23'
          Dst:             njs_array_add
        - Src:             'src/njs_object.c:625,25'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:630,23'
          Dst:             njs_string_alloc
        - Src:             'src/njs_object.c:630,23'
          Dst:             njs_u32toa
        - Src:             'src/njs_object.c:637,23'
          Dst:             njs_array_expand
    - functionName:    njs_object_enumerate_typed_array
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          779
      EdgeCount:       93
      CyclomaticComplexity: 12
      functionsReached:
        - njs_array_alloc
        - njs_array_expand
        - njs_string_alloc
        - njs_throw_error
        - njs_u32toa
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object.c:678,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:665,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:671,11'
          Dst:             njs_array_expand
        - Src:             'src/njs_object.c:681,19'
          Dst:             njs_string_alloc
        - Src:             'src/njs_object.c:681,19'
          Dst:             njs_u32toa
        - Src:             'src/njs_object.c:698,21'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:703,19'
          Dst:             njs_string_alloc
        - Src:             'src/njs_object.c:703,19'
          Dst:             njs_u32toa
    - functionName:    njs_object_enumerate_string
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 725
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          812
      EdgeCount:       122
      CyclomaticComplexity: 32
      functionsReached:
        - njs_array_alloc
        - njs_array_expand
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_u32toa
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_object.c:742,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:733,22'
          Dst:             njs_string_prop
        - Src:             'src/njs_object.c:735,11'
          Dst:             njs_array_expand
        - Src:             'src/njs_object.c:745,19'
          Dst:             njs_string_alloc
        - Src:             'src/njs_object.c:745,19'
          Dst:             njs_u32toa
        - Src:             'src/njs_object.c:758,23'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:775,23'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:794,25'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:799,23'
          Dst:             njs_string_alloc
        - Src:             'src/njs_object.c:799,23'
          Dst:             njs_u32toa
        - Src:             'src/njs_object.c:806,23'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:824,25'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:829,23'
          Dst:             njs_string_alloc
        - Src:             'src/njs_object.c:829,23'
          Dst:             njs_u32toa
        - Src:             'src/njs_object.c:838,23'
          Dst:             njs_string_new
    - functionName:    njs_object_constructor
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          170
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_object_alloc
        - njs_object_value_alloc
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:218,18'
          Dst:             njs_object_alloc
        - Src:             'src/njs_object.c:230,19'
          Dst:             njs_object_value_alloc
        - Src:             'src/njs_object.c:241,9'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:241,9'
          Dst:             njs_throw_error
    - functionName:    njs_object_value_alloc
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          134
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:126,10'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_object.c:128,9'
          Dst:             njs_memory_error
    - functionName:    njs_object_length
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2803
      functionLinenumberEnd: 2818
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          252
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_property
        - njs_value_to_primitive
      functionUses:    29
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2812,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_string_to_number
    - functionName:    njs_object_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2516
      functionLinenumberEnd: 2517
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2517,12'
          Dst:             njs_object_to_string
    - functionName:    njs_property_constructor_set
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2463
      functionLinenumberEnd: 2490
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2474,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object.c:2476,9'
          Dst:             njs_throw_error
    - functionName:    njs_object_prototype_create_constructor
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2395
      functionLinenumberEnd: 2457
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          230
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - njs_property_constructor_set
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2403,13'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:2403,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:2408,16'
          Dst:             njs_property_constructor_set
        - Src:             'src/njs_object.c:2432,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:2450,12'
          Dst:             njs_property_constructor_set
    - functionName:    njs_property_prototype_create
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2201
      functionLinenumberEnd: 2229
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          107
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2212,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object.c:2215,9'
          Dst:             njs_throw_error
    - functionName:    njs_object_prototype_create
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2174
      functionLinenumberEnd: 2194
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          89
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_property_prototype_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2184,17'
          Dst:             njs_property_prototype_create
    - functionName:    njs_primitive_prototype_get_proto
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2137
      functionLinenumberEnd: 2160
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          91
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_object_prototype_proto
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2347
      functionLinenumberEnd: 2382
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          152
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_object_set_prototype
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:2360,19'
          Dst:             njs_object_set_prototype
        - Src:             'src/njs_object.c:2362,17'
          Dst:             njs_throw_error
    - functionName:    njs_object_get_prototype_of
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1788
      functionLinenumberEnd: 1817
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          142
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_object_prototype_proto
        - njs_throw_error
        - njs_type_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1795,9'
          Dst:             njs_object_prototype_proto
        - Src:             'src/njs_object.c:1813,5'
          Dst:             njs_type_string
        - Src:             'src/njs_object.c:1813,5'
          Dst:             njs_throw_error
    - functionName:    njs_object_traverse
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1443
      functionLinenumberEnd: 1553
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          589
      EdgeCount:       92
      CyclomaticComplexity: 27
      functionsReached:
        - njs_arr_add
        - njs_arr_destroy
        - njs_arr_init
        - njs_array_destroy
        - njs_atom_atomize_key
        - njs_property_query
        - njs_throw_error
        - njs_value_own_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1458,15'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_object.c:1464,13'
          Dst:             njs_arr_init
        - Src:             'src/njs_object.c:1469,12'
          Dst:             njs_arr_add
        - Src:             'src/njs_object.c:1474,13'
          Dst:             njs_array_destroy
        - Src:             'src/njs_object.c:1488,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:1488,15'
          Dst:             njs_property_query
        - Src:             'src/njs_object.c:1524,19'
          Dst:             njs_arr_add
        - Src:             'src/njs_object.c:1530,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1540,23'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_object.c:1550,5'
          Dst:             njs_arr_destroy
    - functionName:    njs_object_copy_shared_hash
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1236
      functionLinenumberEnd: 1294
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          434
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - njs_dtoa2
        - njs_flathsh_each
        - njs_flathsh_unique_insert
        - njs_string_new
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1255,15'
          Dst:             njs_flathsh_each
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.c:1262,15'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.c:1272,13'
          Dst:             njs_string_new
        - Src:             'src/njs_object.c:1276,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object.c:1278,13'
          Dst:             njs_throw_error
    - functionName:    njs_object_make_shared
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1299
      functionLinenumberEnd: 1437
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         76
      ICount:          688
      EdgeCount:       105
      CyclomaticComplexity: 31
      functionsReached:
        - njs_arr_add
        - njs_arr_destroy
        - njs_arr_init
        - njs_array_destroy
        - njs_atom_atomize_key
        - njs_flathsh_unique_insert
        - njs_object_copy_shared_hash
        - njs_property_query
        - njs_throw_error
        - njs_value_own_enumerate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:1314,15'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_object.c:1329,15'
          Dst:             njs_object_copy_shared_hash
        - Src:             'src/njs_object.c:1335,13'
          Dst:             njs_arr_init
        - Src:             'src/njs_object.c:1340,12'
          Dst:             njs_arr_add
        - Src:             'src/njs_object.c:1350,13'
          Dst:             njs_array_destroy
        - Src:             'src/njs_object.c:1365,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.c:1365,15'
          Dst:             njs_property_query
        - Src:             'src/njs_object.c:1377,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object.c:1380,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1398,19'
          Dst:             njs_arr_add
        - Src:             'src/njs_object.c:1404,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:1414,23'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_object.c:1424,23'
          Dst:             njs_object_copy_shared_hash
        - Src:             'src/njs_object.c:1434,5'
          Dst:             njs_arr_destroy
    - functionName:    njs_object_own_enumerate
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          180
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - njs_array_alloc
        - njs_object_enumerate_array
        - njs_object_enumerate_string
        - njs_object_enumerate_typed_array
        - njs_object_own_enumerate_object
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_object.c:477,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:548,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:553,11'
          Dst:             njs_object_enumerate_array
        - Src:             'src/njs_object.c:553,11'
          Dst:             njs_object_enumerate_typed_array
        - Src:             'src/njs_object.c:553,11'
          Dst:             njs_object_enumerate_string
        - Src:             'src/njs_object.c:553,11'
          Dst:             njs_object_own_enumerate_object
    - functionName:    njs_object_enumerate
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          176
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - njs_array_alloc
        - njs_object_enumerate_array
        - njs_object_enumerate_object
        - njs_object_enumerate_string
        - njs_object_enumerate_typed_array
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_object.c:426,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:527,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_object.c:532,11'
          Dst:             njs_object_enumerate_array
        - Src:             'src/njs_object.c:532,11'
          Dst:             njs_object_enumerate_typed_array
        - Src:             'src/njs_object.c:532,11'
          Dst:             njs_object_enumerate_string
        - Src:             'src/njs_object.c:532,11'
          Dst:             njs_object_enumerate_object
    - functionName:    njs_object_hash_create
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          135
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object.c:174,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object.c:176,13'
          Dst:             njs_throw_error
    - functionName:    njs_object_value_copy
      functionSourceFile: '/src/njs/src/njs_object.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          156
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_throw_error
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_object.c:78,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.c:100,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object.c:104,14'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_object.c:114,5'
          Dst:             njs_memory_error
    - functionName:    njs_object_props_init
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1006
      functionLinenumberEnd: 1045
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          163
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_object_alloc
        - njs_object_hash_create
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object_prop.c:1012,14'
          Dst:             njs_object_alloc
        - Src:             'src/njs_object_prop.c:1017,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_object_prop.c:1028,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:1030,9'
          Dst:             njs_throw_error
    - functionName:    njs_object_prop_descriptor
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         129
      ICount:          1357
      EdgeCount:       166
      CyclomaticComplexity: 39
      functionsReached:
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_flathsh_unique_insert
        - njs_object_alloc
        - njs_object_to_string
        - njs_prop_type_string
        - njs_property_query
        - njs_string_new
        - njs_throw_error
        - njs_value_to_primitive
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_object.h:144,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object_prop.c:810,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object_prop.c:814,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_object.h:211,12'
          Dst:             njs_object_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:146,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:150,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:155,13'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:158,13'
          Dst:             njs_string_new
        - Src:             'src/njs_object_prop.c:808,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object_prop.c:808,11'
          Dst:             njs_property_query
        - Src:             'src/njs_object_prop.c:831,13'
          Dst:             njs_prop_type_string
        - Src:             'src/njs_object_prop.c:831,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:847,12'
          Dst:             njs_object_alloc
        - Src:             'src/njs_object_prop.c:859,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:861,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:877,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:879,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:895,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:897,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:915,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:917,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:938,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:940,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:956,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:958,9'
          Dst:             njs_throw_error
    - functionName:    njs_prop_type_string
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 999
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'src/njs_object_prop.c:979,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    njs_prop_private_copy
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          468
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - njs_dtoa2
        - njs_flathsh_unique_insert
        - njs_function_copy
        - njs_function_name_set
        - njs_function_value_copy
        - njs_object_value_copy
        - njs_string_new
        - njs_throw_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_object_prop.c:625,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object_prop.c:580,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:582,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:595,24'
          Dst:             njs_function_copy
        - Src:             'src/njs_object_prop.c:612,24'
          Dst:             njs_function_copy
        - Src:             'src/njs_object_prop.c:629,18'
          Dst:             njs_object_value_copy
        - Src:             'src/njs_object_prop.c:638,20'
          Dst:             njs_function_value_copy
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object_prop.c:643,15'
          Dst:             njs_string_new
        - Src:             'src/njs_object_prop.c:648,16'
          Dst:             njs_function_name_set
    - functionName:    njs_descriptor_prop
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          443
      EdgeCount:       82
      CyclomaticComplexity: 24
      functionsReached:
        - njs_object_prop_init
        - njs_object_property
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object_prop.c:671,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:675,5'
          Dst:             njs_object_prop_init
        - Src:             'src/njs_object_prop.c:691,11'
          Dst:             njs_object_property
        - Src:             'src/njs_object_prop.c:698,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:708,11'
          Dst:             njs_object_property
        - Src:             'src/njs_object_prop.c:715,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:725,11'
          Dst:             njs_object_property
        - Src:             'src/njs_object_prop.c:737,11'
          Dst:             njs_object_property
        - Src:             'src/njs_object_prop.c:749,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:756,11'
          Dst:             njs_object_property
        - Src:             'src/njs_object_prop.c:768,11'
          Dst:             njs_object_property
    - functionName:    njs_object_prop_init
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          113
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_object_property
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          246
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - njs_flathsh_unique_find
        - njs_function_call2
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object_prop.c:54,15'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_object_prop.c:64,15'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_object_prop.c:94,12'
          Dst:             njs_function_call2
    - functionName:    njs_object_prop_define
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 1158
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         450
      ICount:          3335
      EdgeCount:       615
      CyclomaticComplexity: 167
      functionsReached:
        - njs_array_convert_to_slow_array
        - njs_array_length_redefine
        - njs_array_length_set
        - njs_descriptor_prop
        - njs_dtoa2
        - njs_flathsh_unique_insert
        - njs_object_prop_init
        - njs_prop_type_string
        - njs_property_query
        - njs_string_eq
        - njs_string_new
        - njs_string_to_index
        - njs_symbol_descriptive_string
        - njs_throw_error
        - njs_typed_array_set_value
        - njs_value_to_string
      functionUses:    15
      BranchProfiles:
        - Branch String:   'src/njs_object_prop.c:161,5'
          Branch Sides:    []
        - Branch String:   'src/njs_object_prop.c:305,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_object_prop.c:155,19'
          Dst:             njs_property_query
        - Src:             'src/njs_object_prop.c:163,16'
          Dst:             njs_descriptor_prop
        - Src:             'src/njs_object_prop.c:185,9'
          Dst:             njs_object_prop_init
        - Src:             'src/njs_object_prop.c:195,9'
          Dst:             njs_object_prop_init
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_object_prop.c:217,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object_prop.c:227,19'
          Dst:             njs_string_new
        - Src:             'src/njs_object_prop.c:232,18'
          Dst:             njs_string_to_index
        - Src:             'src/njs_object_prop.c:233,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:284,19'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:286,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:329,15'
          Dst:             njs_array_convert_to_slow_array
        - Src:             'src/njs_object_prop.c:334,15'
          Dst:             njs_array_length_redefine
        - Src:             'src/njs_object_prop.c:356,20'
          Dst:             njs_typed_array_set_value
        - Src:             'src/njs_object_prop.c:365,9'
          Dst:             njs_prop_type_string
        - Src:             'src/njs_object_prop.c:365,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value.h:1157,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_object_prop.c:466,15'
          Dst:             njs_array_convert_to_slow_array
        - Src:             'src/njs_object_prop.c:471,15'
          Dst:             njs_array_length_redefine
        - Src:             'src/njs_value.h:1121,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_object_prop.c:521,21'
          Dst:             njs_throw_error
        - Src:             'src/njs_object_prop.c:529,24'
          Dst:             njs_array_length_set
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_object_prop.c:559,5'
          Dst:             njs_throw_error
    - functionName:    njs_object_property_add
      functionSourceFile: '/src/njs/src/njs_object_prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          91
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_object_prop.c:111,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_object_prop.c:113,9'
          Dst:             njs_throw_error
    - functionName:    njs_array_compare
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2659
      functionLinenumberEnd: 2734
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          381
      EdgeCount:       59
      CyclomaticComplexity: 18
      functionsReached:
        - njs_arr_add
        - njs_function_call2
        - njs_string_cmp
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2680,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_array.c:2685,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_array.c:2685,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_array.c:2685,15'
          Dst:             njs_string_to_number
        - Src:             'src/njs_array.c:2702,22'
          Dst:             njs_arr_add
        - Src:             'src/njs_array.c:2703,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_array.c:2710,22'
          Dst:             njs_arr_add
        - Src:             'src/njs_array.c:2711,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_array.c:2717,11'
          Dst:             njs_string_cmp
    - functionName:    njs_sort_indexed_properties
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2741
      functionLinenumberEnd: 2913
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         116
      ICount:          967
      EdgeCount:       157
      CyclomaticComplexity: 43
      functionsReached:
        - njs_arr_destroy
        - njs_arr_init
        - njs_array_compare
        - njs_array_destroy
        - njs_array_indices
        - njs_atom_atomize_key
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_qsort
        - njs_value_property
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2760,17'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array.c:2763,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_array.c:2771,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:2794,20'
          Dst:             njs_array_indices
        - Src:             'src/njs_array.c:2799,21'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array.c:2802,17'
          Dst:             njs_memory_error
        - Src:             'src/njs_array.c:2813,23'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_array.c:2813,23'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:2838,21'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array.c:2841,17'
          Dst:             njs_memory_error
        - Src:             'src/njs_array.c:2852,32'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array.c:2855,25'
          Dst:             njs_memory_error
        - Src:             'src/njs_array.c:2862,21'
          Dst:             njs_mp_free
        - Src:             'src/njs_array.c:2868,23'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:2888,15'
          Dst:             njs_arr_init
        - Src:             'src/njs_array.c:2891,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_array.c:2895,5'
          Dst:             njs_qsort
        - Src:             'src/njs_array.c:2895,5'
          Dst:             njs_array_compare
        - Src:             'src/njs_array.c:2899,5'
          Dst:             njs_arr_destroy
        - Src:             'src/njs_array.c:2904,9'
          Dst:             njs_array_destroy
        - Src:             'src/njs_array.c:2908,9'
          Dst:             njs_mp_free
    - functionName:    njs_array_indices
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1862
      functionLinenumberEnd: 1882
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          79
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_array_keys
        - njs_string_to_index
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1867,12'
          Dst:             njs_array_keys
        - Src:             'src/njs_array.c:1873,15'
          Dst:             njs_string_to_index
    - functionName:    njs_array_destroy
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
      functionUses:    30
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:129,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_array.c:134,5'
          Dst:             njs_mp_free
    - functionName:    njs_array_keys
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1844
      functionLinenumberEnd: 1857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_array_indices_handler
        - njs_qsort
        - njs_value_own_enumerate
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1847,12'
          Dst:             njs_value_own_enumerate
        - Src:             'src/njs_array.c:1853,5'
          Dst:             njs_qsort
        - Src:             'src/njs_array.c:1853,5'
          Dst:             njs_array_indices_handler
    - functionName:    njs_array_indices_handler
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1747
      functionLinenumberEnd: 1798
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          191
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - njs_string_to_index
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1756,12'
          Dst:             njs_string_to_index
        - Src:             'src/njs_array.c:1757,12'
          Dst:             njs_string_to_index
        - Src:             'src/njs_array.c:1781,15'
          Dst:             strncmp
    - functionName:    njs_array_prototype_slice_copy
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         100
      ICount:          774
      EdgeCount:       134
      CyclomaticComplexity: 36
      functionsReached:
        - njs_array_alloc
        - njs_array_destroy
        - njs_array_indices
        - njs_atom_atomize_key
        - njs_string_new
        - njs_string_prop
        - njs_string_slice_string_prop
        - njs_string_to_index
        - njs_value_property
        - njs_value_property_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:802,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:823,42'
          Dst:             njs_string_prop
        - Src:             'src/njs_array.c:825,13'
          Dst:             njs_string_slice_string_prop
        - Src:             'src/njs_array.c:834,23'
          Dst:             njs_string_new
        - Src:             'src/njs_array.c:847,23'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:875,12'
          Dst:             njs_array_indices
        - Src:             'src/njs_array.c:881,15'
          Dst:             njs_string_to_index
        - Src:             'src/njs_array.c:887,15'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:892,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:903,9'
          Dst:             njs_array_destroy
    - functionName:    njs_array_alloc
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          253
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_array_length_redefine
        - njs_memory_error
        - njs_mp_align
        - njs_mp_alloc
        - njs_throw_error
      functionUses:    41
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:65,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array.c:73,23'
          Dst:             njs_mp_align
        - Src:             'src/njs_array.c:103,15'
          Dst:             njs_array_length_redefine
        - Src:             'src/njs_array.c:113,5'
          Dst:             njs_memory_error
        - Src:             'src/njs_array.c:119,5'
          Dst:             njs_throw_error
    - functionName:    njs_array_length_redefine
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          87
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_object_property_add
        - njs_throw_error
        - njs_value_number_set
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:179,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:184,12'
          Dst:             njs_object_property_add
        - Src:             'src/njs_array.c:186,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:195,5'
          Dst:             njs_value_number_set
    - functionName:    njs_array_handler_map
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2319
      functionLinenumberEnd: 2352
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          347
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_value_property_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2108,12'
          Dst:             njs_function_call2
        - Src:             'src/njs_array.c:2343,23'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
    - functionName:    njs_array_handler_filter
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2292
      functionLinenumberEnd: 2313
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          173
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_array_add
        - njs_function_call2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2108,12'
          Dst:             njs_function_call2
        - Src:             'src/njs_array.c:2305,19'
          Dst:             njs_array_add
    - functionName:    njs_array_add
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_array_expand
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:334,11'
          Dst:             njs_array_expand
    - functionName:    njs_array_expand
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          205
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_memory_error
        - njs_mp_align
        - njs_mp_free
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:391,13'
          Dst:             njs_mp_align
        - Src:             'src/njs_array.c:410,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_array.c:417,5'
          Dst:             njs_memory_error
    - functionName:    njs_array_handler_reduce
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2262
      functionLinenumberEnd: 2286
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          146
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_function_call2
        - njs_value_is_valid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2267,14'
          Dst:             njs_value_is_valid
        - Src:             'src/njs_array.c:2278,16'
          Dst:             njs_function_call2
    - functionName:    njs_array_handler_find_index
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2233
      functionLinenumberEnd: 2256
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          189
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_function_call2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2108,12'
          Dst:             njs_function_call2
    - functionName:    njs_array_handler_find
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2204
      functionLinenumberEnd: 2227
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          159
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_function_call2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2108,12'
          Dst:             njs_function_call2
    - functionName:    njs_array_handler_for_each
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2192
      functionLinenumberEnd: 2198
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          120
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_call2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2108,12'
          Dst:             njs_function_call2
    - functionName:    njs_array_handler_index_of
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2178
      functionLinenumberEnd: 2186
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          189
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - njs_string_eq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.h:1121,12'
          Dst:             njs_string_eq
    - functionName:    njs_array_handler_includes
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2160
      functionLinenumberEnd: 2172
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          203
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - njs_string_eq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.h:1188,12'
          Dst:             njs_string_eq
    - functionName:    njs_array_handler_some
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2138
      functionLinenumberEnd: 2154
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          153
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_function_call2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2108,12'
          Dst:             njs_function_call2
    - functionName:    njs_array_handler_every
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2116
      functionLinenumberEnd: 2132
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          153
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_function_call2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2108,12'
          Dst:             njs_function_call2
    - functionName:    njs_array_copy_within
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 1084
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         70
      ICount:          579
      EdgeCount:       93
      CyclomaticComplexity: 25
      functionsReached:
        - njs_atom_atomize_key
        - njs_value_property
        - njs_value_property_delete
        - njs_value_property_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:308,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:314,19'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:317,19'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
    - functionName:    njs_array_prototype_unshift
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         114
      ICount:          993
      EdgeCount:       154
      CyclomaticComplexity: 42
      functionsReached:
        - njs_array_destroy
        - njs_array_expand
        - njs_array_indices
        - njs_atom_atomize_key
        - njs_object_length
        - njs_string_to_index
        - njs_throw_error
        - njs_value_number_set
        - njs_value_property_delete
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1047,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1056,19'
          Dst:             njs_array_expand
        - Src:             'src/njs_array.c:1076,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:1086,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:1091,16'
          Dst:             njs_array_indices
        - Src:             'src/njs_array.c:1099,19'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:1103,17'
          Dst:             njs_array_destroy
        - Src:             'src/njs_array.c:1108,23'
          Dst:             njs_string_to_index
        - Src:             'src/njs_array.c:1110,23'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1112,21'
          Dst:             njs_array_destroy
        - Src:             'src/njs_array.c:1118,9'
          Dst:             njs_array_destroy
        - Src:             'src/njs_array.c:1130,15'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:1138,19'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1148,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1156,11'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:1156,11'
          Dst:             njs_value_property_set
    - functionName:    njs_array_prototype_to_spliced
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1472
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         127
      ICount:          1081
      EdgeCount:       171
      CyclomaticComplexity: 46
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_object_length
        - njs_object_prop_define
        - njs_throw_error
        - njs_value_property
        - njs_value_to_integer
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1385,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1390,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:1395,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:1411,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:1422,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:1426,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:1434,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_array.c:1455,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
    - functionName:    njs_array_prototype_to_sorted
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3011
      functionLinenumberEnd: 3094
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          556
      EdgeCount:       84
      CyclomaticComplexity: 23
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_mp_free
        - njs_object_prop_define
        - njs_sort_indexed_properties
        - njs_throw_error
        - njs_value_length
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:3023,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:3035,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:3040,11'
          Dst:             njs_value_length
        - Src:             'src/njs_array.c:3045,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:3051,17'
          Dst:             njs_sort_indexed_properties
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_array.c:3090,9'
          Dst:             njs_mp_free
    - functionName:    njs_array_prototype_to_reversed
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1552
      functionLinenumberEnd: 1592
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          415
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_object_prop_define
        - njs_value_length
        - njs_value_property
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1560,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1565,11'
          Dst:             njs_value_length
        - Src:             'src/njs_array.c:1570,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:1578,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
    - functionName:    njs_array_prototype_splice
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1244
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         145
      ICount:          1182
      EdgeCount:       196
      CyclomaticComplexity: 53
      functionsReached:
        - njs_array_alloc
        - njs_array_copy_within
        - njs_atom_atomize_key
        - njs_object_length
        - njs_object_prop_define
        - njs_throw_error
        - njs_value_number_set
        - njs_value_property
        - njs_value_property_delete
        - njs_value_property_set
        - njs_value_to_integer
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1252,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1257,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:1262,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:1278,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:1289,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:1295,15'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:1314,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_array.c:1334,11'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:1334,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1340,14'
          Dst:             njs_array_copy_within
        - Src:             'src/njs_array.c:1347,19'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:1357,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1363,11'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:1363,11'
          Dst:             njs_value_property_set
    - functionName:    njs_array_prototype_sort
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2919
      functionLinenumberEnd: 3005
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         79
      ICount:          619
      EdgeCount:       105
      CyclomaticComplexity: 28
      functionsReached:
        - njs_atom_atomize_key
        - njs_mp_free
        - njs_sort_indexed_properties
        - njs_throw_error
        - njs_value_length
        - njs_value_property_delete
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2930,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:2942,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:2947,11'
          Dst:             njs_value_length
        - Src:             'src/njs_array.c:2961,13'
          Dst:             njs_sort_indexed_properties
        - Src:             'src/njs_array.c:2971,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:2978,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:2986,15'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:3001,9'
          Dst:             njs_mp_free
    - functionName:    njs_array_prototype_slice
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          246
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - njs_array_prototype_slice_copy
        - njs_object_length
        - njs_value_to_integer
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:726,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:731,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:738,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:757,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:783,12'
          Dst:             njs_array_prototype_slice_copy
    - functionName:    njs_array_prototype_shift
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1238
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          746
      EdgeCount:       112
      CyclomaticComplexity: 31
      functionsReached:
        - njs_atom_atomize_key
        - njs_object_length
        - njs_value_number_set
        - njs_value_property
        - njs_value_property_delete
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1178,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1183,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:1189,15'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:1189,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1199,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1212,15'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:1218,19'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:1224,23'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1231,15'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:1231,15'
          Dst:             njs_value_property_set
    - functionName:    njs_array_prototype_reverse
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1478
      functionLinenumberEnd: 1546
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         121
      ICount:          1056
      EdgeCount:       163
      CyclomaticComplexity: 44
      functionsReached:
        - njs_atom_atomize_key
        - njs_object_length
        - njs_value_property
        - njs_value_property_delete
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1485,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1490,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:1501,16'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1506,16'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1512,19'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1518,23'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1524,23'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:1531,19'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1536,19'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
    - functionName:    njs_array_prototype_push
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          437
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - njs_array_expand
        - njs_atom_atomize_key
        - njs_object_length
        - njs_throw_error
        - njs_value_number_set
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:925,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:934,19'
          Dst:             njs_array_expand
        - Src:             'src/njs_array.c:949,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:955,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:960,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:966,11'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:966,11'
          Dst:             njs_value_property_set
    - functionName:    njs_array_prototype_pop
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 980
      functionLinenumberEnd: 1084
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          448
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - njs_atom_atomize_key
        - njs_object_length
        - njs_value_number_set
        - njs_value_property
        - njs_value_property_delete
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:987,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:992,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:998,15'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:998,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1008,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1017,15'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1083,12'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:1022,15'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:1022,15'
          Dst:             njs_value_property_set
    - functionName:    njs_array_prototype_reverse_iterator
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2536
      functionLinenumberEnd: 2638
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          366
      EdgeCount:       76
      CyclomaticComplexity: 18
      functionsReached:
        - njs_object_iterate_reverse
        - njs_throw_error
        - njs_value_invalid_set
        - njs_value_is_valid
        - njs_value_length
        - njs_value_to_integer
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_array.c:2556,5'
          Branch Sides:    []
        - Branch String:   'src/njs_array.c:2621,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_array.c:2544,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:2551,11'
          Dst:             njs_value_length
        - Src:             'src/njs_array.c:2565,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:2588,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:2594,9'
          Dst:             njs_value_invalid_set
        - Src:             'src/njs_array.c:2610,11'
          Dst:             njs_object_iterate_reverse
        - Src:             'src/njs_array.c:2628,14'
          Dst:             njs_value_is_valid
        - Src:             'src/njs_array.c:2629,13'
          Dst:             njs_throw_error
    - functionName:    njs_array_prototype_join
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1627
      functionLinenumberEnd: 1742
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          811
      EdgeCount:       125
      CyclomaticComplexity: 35
      functionsReached:
        - njs_atom_atomize_key
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_drop
        - njs_chb_init
        - njs_chb_join_to
        - njs_dtoa2
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_object_length
        - njs_primitive_value_to_chain
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_throw_error
        - njs_value_property
        - njs_value_to_object
        - njs_value_to_primitive
        - njs_value_to_string
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1637,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1649,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_array.c:1657,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_array.c:1666,9'
          Dst:             njs_string_new
        - Src:             'src/njs_array.c:1672,11'
          Dst:             njs_object_length
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_array.c:1678,9'
          Dst:             njs_string_new
        - Src:             'src/njs_array.c:1684,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_array.c:1684,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_array.c:1684,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array.c:1684,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_array.c:1687,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1694,23'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_array.c:1694,23'
          Dst:             njs_primitive_value_to_chain
        - Src:             'src/njs_array.c:1702,24'
          Dst:             njs_string_prop
        - Src:             'src/njs_array.c:1704,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_array.c:1709,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_array.c:1712,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:1717,5'
          Dst:             njs_chb_drop
        - Src:             'src/njs_array.c:1722,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:1725,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_array.c:1733,9'
          Dst:             njs_string_alloc
        - Src:             'src/njs_array.c:1738,5'
          Dst:             njs_chb_join_to
        - Src:             'src/njs_array.c:1739,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_array_prototype_fill
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2033
      functionLinenumberEnd: 2095
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         74
      ICount:          500
      EdgeCount:       99
      CyclomaticComplexity: 27
      functionsReached:
        - njs_atom_atomize_key
        - njs_object_length
        - njs_value_property_set
        - njs_value_to_integer
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:2041,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:2046,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:2051,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:2062,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:2086,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
    - functionName:    njs_array_prototype_iterator
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2358
      functionLinenumberEnd: 2530
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          568
      EdgeCount:       113
      CyclomaticComplexity: 20
      functionsReached:
        - njs_array_alloc
        - njs_object_iterate
        - njs_throw_error
        - njs_value_invalid_set
        - njs_value_is_valid
        - njs_value_length
        - njs_value_to_integer
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_array.c:2392,5'
          Branch Sides:    []
        - Branch String:   'src/njs_array.c:2403,9'
          Branch Sides:    []
        - Branch String:   'src/njs_array.c:2494,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_array.c:2367,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:2372,11'
          Dst:             njs_value_length
        - Src:             'src/njs_array.c:2381,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:2417,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:2448,13'
          Dst:             njs_value_invalid_set
        - Src:             'src/njs_array.c:2465,17'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:2481,11'
          Dst:             njs_object_iterate
        - Src:             'src/njs_array.c:2515,14'
          Dst:             njs_value_is_valid
        - Src:             'src/njs_array.c:2516,13'
          Dst:             njs_throw_error
    - functionName:    njs_array_prototype_iterator_obj
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3157
      functionLinenumberEnd: 3169
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_array_iterator_create
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:3163,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:3168,12'
          Dst:             njs_array_iterator_create
    - functionName:    njs_array_prototype_copy_within
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3100
      functionLinenumberEnd: 3151
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          369
      EdgeCount:       79
      CyclomaticComplexity: 22
      functionsReached:
        - njs_array_copy_within
        - njs_value_length
        - njs_value_to_integer
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:3107,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:3112,11'
          Dst:             njs_value_length
        - Src:             'src/njs_array.c:3117,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:3124,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:3137,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array.c:3149,12'
          Dst:             njs_array_copy_within
    - functionName:    njs_array_prototype_concat
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1912
      functionLinenumberEnd: 2027
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         119
      ICount:          1017
      EdgeCount:       162
      CyclomaticComplexity: 45
      functionsReached:
        - njs_array_alloc
        - njs_array_destroy
        - njs_array_indices
        - njs_atom_atomize_key
        - njs_object_length
        - njs_string_to_index
        - njs_throw_error
        - njs_value_number_set
        - njs_value_property
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1920,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:1927,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:1940,15'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1946,19'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:1952,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:1958,27'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1967,27'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1977,20'
          Dst:             njs_array_indices
        - Src:             'src/njs_array.c:1983,23'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_array.c:1983,23'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:1989,27'
          Dst:             njs_string_to_index
        - Src:             'src/njs_array.c:1991,27'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:1993,25'
          Dst:             njs_array_destroy
        - Src:             'src/njs_array.c:1999,13'
          Dst:             njs_array_destroy
        - Src:             'src/njs_array.c:2007,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:2011,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_array.c:2019,11'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:2019,11'
          Dst:             njs_value_property_set
    - functionName:    njs_array_of
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          121
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - njs_array_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:587,13'
          Dst:             njs_array_alloc
    - functionName:    njs_array_is_array
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          50
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_array_from
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         80
      ICount:          709
      EdgeCount:       108
      CyclomaticComplexity: 30
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_object_length
        - njs_object_prop_define
        - njs_throw_error
        - njs_value_construct
        - njs_value_number_set
        - njs_value_property
        - njs_value_property_set
        - njs_value_to_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:493,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:504,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_array.c:509,11'
          Dst:             njs_object_length
        - Src:             'src/njs_array.c:519,15'
          Dst:             njs_value_construct
        - Src:             'src/njs_array.c:525,17'
          Dst:             njs_array_alloc
        - Src:             'src/njs_array.c:536,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_array.c:545,19'
          Dst:             njs_function_call2
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_array.c:557,11'
          Dst:             njs_value_number_set
        - Src:             'src/njs_array.c:557,11'
          Dst:             njs_value_property_set
    - functionName:    njs_array_constructor
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          216
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - njs_array_alloc
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:440,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:447,13'
          Dst:             njs_array_alloc
    - functionName:    njs_array_length
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          479
      EdgeCount:       87
      CyclomaticComplexity: 26
      functionsReached:
        - njs_array_convert_to_slow_array
        - njs_array_expand
        - njs_array_length_redefine
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:661,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_array.c:661,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_array.c:661,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_array.c:668,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array.c:679,23'
          Dst:             njs_array_expand
        - Src:             'src/njs_array.c:699,15'
          Dst:             njs_array_convert_to_slow_array
        - Src:             'src/njs_array.c:705,11'
          Dst:             njs_array_length_redefine
    - functionName:    njs_array_convert_to_slow_array
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          142
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_mp_free
        - njs_object_property_add
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:156,20'
          Dst:             njs_object_property_add
        - Src:             'src/njs_array.c:165,5'
          Dst:             njs_mp_free
    - functionName:    njs_array_indices_handler_nums
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1803
      functionLinenumberEnd: 1839
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_string_to_index
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1811,12'
          Dst:             njs_string_to_index
        - Src:             'src/njs_array.c:1812,12'
          Dst:             njs_string_to_index
    - functionName:    njs_array_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1621
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          111
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_function_call2
        - njs_object_property
        - njs_object_prototype_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:1607,15'
          Dst:             njs_object_property
        - Src:             'src/njs_array.c:1615,20'
          Dst:             njs_function_call2
        - Src:             'src/njs_array.c:1620,12'
          Dst:             njs_object_prototype_to_string
    - functionName:    njs_array_string_add
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_array_expand
        - njs_string_new
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:350,11'
          Dst:             njs_array_expand
        - Src:             'src/njs_array.c:353,16'
          Dst:             njs_string_new
    - functionName:    njs_array_length_set
      functionSourceFile: '/src/njs/src/njs_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         76
      ICount:          532
      EdgeCount:       104
      CyclomaticComplexity: 30
      functionsReached:
        - njs_array_destroy
        - njs_array_indices
        - njs_array_length_redefine
        - njs_string_to_index
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_value_property_delete
        - njs_value_to_primitive
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array.c:211,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_array.c:211,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_array.c:211,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_array.c:218,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_array.c:230,16'
          Dst:             njs_array_indices
        - Src:             'src/njs_array.c:239,23'
          Dst:             njs_string_to_index
        - Src:             'src/njs_array.c:241,27'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_array.c:252,11'
          Dst:             njs_array_length_redefine
        - Src:             'src/njs_array.c:262,9'
          Dst:             njs_array_destroy
    - functionName:    njs_json_append_number
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1568
      functionLinenumberEnd: 1588
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          97
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_chb_append0
        - njs_chb_reserve
        - njs_dtoa2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:1576,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1579,13'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_json.c:1584,16'
          Dst:             njs_dtoa2
    - functionName:    njs_object_to_json_function
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_object_property
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:1240,15'
          Dst:             njs_object_property
    - functionName:    njs_json_append_value
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1405
      functionLinenumberEnd: 1464
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          338
      EdgeCount:       59
      CyclomaticComplexity: 11
      functionsReached:
        - njs_chb_append0
        - njs_json_append_number
        - njs_json_append_string
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_json.c:1409,9'
          Branch Sides:    []
        - Branch String:   'src/njs_json.c:1435,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_json.c:1423,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_json.c:1437,9'
          Dst:             njs_json_append_string
        - Src:             'src/njs_json.c:1441,9'
          Dst:             njs_json_append_number
        - Src:             'src/njs_json.c:1446,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1449,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1460,9'
          Dst:             njs_chb_append0
    - functionName:    njs_json_append_string
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1470
      functionLinenumberEnd: 1563
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          505
      EdgeCount:       68
      CyclomaticComplexity: 16
      functionsReached:
        - njs_chb_append0
        - njs_chb_reserve
        - njs_string_prop
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/njs_json.c:1516,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_json.c:1480,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_json.c:1487,11'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_json.c:1500,19'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_json.c:1562,5'
          Dst:             njs_chb_append0
    - functionName:    njs_json_stringify_replacer
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1290
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          188
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_function_call2
        - njs_string_alloc
        - njs_u32toa
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:1305,15'
          Dst:             njs_string_alloc
        - Src:             'src/njs_json.c:1305,15'
          Dst:             njs_u32toa
        - Src:             'src/njs_json.c:1311,12'
          Dst:             njs_function_call2
    - functionName:    njs_json_stringify_to_json
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          195
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_function_call2
        - njs_object_to_json_function
        - njs_string_alloc
        - njs_u32toa
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:1265,15'
          Dst:             njs_object_to_json_function
        - Src:             'src/njs_json.c:1276,15'
          Dst:             njs_string_alloc
        - Src:             'src/njs_json.c:1276,15'
          Dst:             njs_u32toa
        - Src:             'src/njs_json.c:1282,12'
          Dst:             njs_function_call2
    - functionName:    njs_json_stringify_iterator
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         126
      ICount:          949
      EdgeCount:       169
      CyclomaticComplexity: 45
      functionsReached:
        - njs_array_destroy
        - njs_atom_atomize_key
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_drain
        - njs_chb_drop
        - njs_chb_init
        - njs_json_append_string
        - njs_json_append_value
        - njs_json_push_stringify_state
        - njs_json_stringify_replacer
        - njs_json_stringify_to_json
        - njs_json_wrap_value
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_create_chb
        - njs_throw_error
        - njs_value_property
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_json.c:1024,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_json.c:1074,11'
          Dst:             njs_json_wrap_value
        - Src:             'src/njs_json.c:1079,13'
          Dst:             njs_json_push_stringify_state
        - Src:             'src/njs_json.c:1084,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_json.c:1084,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_json.c:1084,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_json.c:1084,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_json.c:1089,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1090,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1094,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1095,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1097,21'
          Dst:             njs_array_destroy
        - Src:             'src/njs_json.c:1115,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_json.c:1115,15'
          Dst:             njs_value_property
        - Src:             'src/njs_json.c:1124,15'
          Dst:             njs_json_stringify_to_json
        - Src:             'src/njs_json.c:1129,15'
          Dst:             njs_json_stringify_replacer
        - Src:             'src/njs_json.c:1146,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1147,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1153,13'
          Dst:             njs_json_append_string
        - Src:             'src/njs_json.c:1154,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1156,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1161,21'
          Dst:             njs_json_push_stringify_state
        - Src:             'src/njs_json.c:1169,15'
          Dst:             njs_json_append_value
        - Src:             'src/njs_json.c:1182,5'
          Dst:             njs_chb_drain
        - Src:             'src/njs_json.c:1183,5'
          Dst:             njs_chb_drop
        - Src:             'src/njs_json.c:1186,9'
          Dst:             njs_chb_drain
        - Src:             'src/njs_json.c:1187,9'
          Dst:             njs_chb_drop
        - Src:             'src/njs_json.c:1193,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_json.c:1196,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_json.c:1199,9'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_json.c:1209,11'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_json.c:1211,9'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_json.c:1217,5'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_json.c:1223,5'
          Dst:             njs_memory_error
    - functionName:    njs_json_wrap_value
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1597
      functionLinenumberEnd: 1629
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          112
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_object_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:1602,30'
          Dst:             njs_object_alloc
        - Src:             'src/njs_json.c:1615,11'
          Dst:             njs_flathsh_unique_insert
    - functionName:    njs_json_push_stringify_state
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 939
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          238
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_array_keys
        - njs_object_length
        - njs_throw_error
        - njs_value_own_enumerate
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:944,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_json.c:965,23'
          Dst:             njs_array_keys
        - Src:             'src/njs_json.c:970,15'
          Dst:             njs_object_length
        - Src:             'src/njs_json.c:976,23'
          Dst:             njs_value_own_enumerate
    - functionName:    njs_json_stringify_array
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1318
      functionLinenumberEnd: 1400
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         78
      ICount:          695
      EdgeCount:       100
      CyclomaticComplexity: 24
      functionsReached:
        - njs_array_alloc
        - njs_array_expand
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_number_to_string
        - njs_object_length
        - njs_string_eq
        - njs_string_new
        - njs_value_property
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_json.c:1346,9'
          Branch Sides:    []
        - Branch String:   'src/njs_json.c:1359,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_json.c:1324,11'
          Dst:             njs_object_length
        - Src:             'src/njs_json.c:1329,18'
          Dst:             njs_array_alloc
        - Src:             'src/njs_json.c:1334,12'
          Dst:             njs_array_expand
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:1335,5'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:1338,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_json.c:1351,19'
          Dst:             njs_number_to_string
        - Src:             'src/njs_json.c:1362,23'
          Dst:             njs_value_to_string
        - Src:             'src/njs_value.h:1121,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_json.c:1388,20'
          Dst:             njs_array_expand
    - functionName:    njs_json_parse_number
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_atod2
        - njs_json_parse_exception
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:758,11'
          Dst:             njs_atod2
        - Src:             'src/njs_json.c:765,5'
          Dst:             njs_json_parse_exception
    - functionName:    njs_json_parse_exception
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 924
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_throw_error
        - njs_utf8_stream_length
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:927,14'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_json.c:932,5'
          Dst:             njs_throw_error
    - functionName:    njs_json_parse_string
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         113
      ICount:          740
      EdgeCount:       139
      CyclomaticComplexity: 28
      functionsReached:
        - njs_atom_atomize_key
        - njs_json_parse_exception
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_create
        - njs_utf8_encode
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_json.c:566,9'
          Branch Sides:    []
        - Branch String:   'src/njs_json.c:589,13'
          Branch Sides:    []
        - Branch String:   'src/njs_json.c:671,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_json.c:583,13'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:615,13'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:632,13'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:641,9'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:653,15'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_json.c:655,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_json.c:707,25'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_json.c:721,25'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_json.c:725,25'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_json.c:729,17'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_json.c:737,11'
          Dst:             njs_string_create
        - Src:             'src/njs_json.c:737,11'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_json.c:743,9'
          Dst:             njs_mp_free
    - functionName:    njs_json_parse_array
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          229
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - njs_array_add
        - njs_array_alloc
        - njs_json_parse_exception
        - njs_json_parse_value
        - njs_json_skip_space
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:466,9'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:470,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_json.c:478,13'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:485,17'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:492,13'
          Dst:             njs_json_parse_value
        - Src:             'src/njs_json.c:497,15'
          Dst:             njs_array_add
        - Src:             'src/njs_json.c:504,13'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:526,5'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:532,5'
          Dst:             njs_json_parse_exception
    - functionName:    njs_json_skip_space
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       23
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    8
      BranchProfiles:
        - Branch String:   'src/njs_json.c:802,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    njs_json_parse_value
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          219
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - memcmp
        - njs_json_parse_array
        - njs_json_parse_exception
        - njs_json_parse_number
        - njs_json_parse_object
        - njs_json_parse_string
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_json.c:284,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_json.c:286,16'
          Dst:             njs_json_parse_object
        - Src:             'src/njs_json.c:289,16'
          Dst:             njs_json_parse_array
        - Src:             'src/njs_json.c:292,16'
          Dst:             njs_json_parse_string
        - Src:             'src/njs_json.c:295,13'
          Dst:             memcmp
        - Src:             'src/njs_json.c:304,13'
          Dst:             memcmp
        - Src:             'src/njs_json.c:313,13'
          Dst:             memcmp
        - Src:             'src/njs_json.c:323,16'
          Dst:             njs_json_parse_number
        - Src:             'src/njs_json.c:328,5'
          Dst:             njs_json_parse_exception
    - functionName:    njs_json_parse_object
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          360
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_json_parse_exception
        - njs_json_parse_string
        - njs_json_parse_value
        - njs_json_skip_space
        - njs_memory_error
        - njs_object_alloc
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:345,9'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:349,14'
          Dst:             njs_object_alloc
        - Src:             'src/njs_json.c:357,13'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:365,21'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:375,13'
          Dst:             njs_json_parse_string
        - Src:             'src/njs_json.c:381,13'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:386,13'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:391,13'
          Dst:             njs_json_parse_value
        - Src:             'src/njs_json.c:402,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_json.c:404,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_json.c:416,13'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:438,5'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:444,5'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:450,5'
          Dst:             njs_memory_error
    - functionName:    njs_json_internalize_property
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 821
      functionLinenumberEnd: 918
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          440
      EdgeCount:       70
      CyclomaticComplexity: 20
      functionsReached:
        - njs_array_destroy
        - njs_array_keys
        - njs_dtoa2
        - njs_function_call2
        - njs_json_internalize_property
        - njs_object_length
        - njs_string_new
        - njs_throw_error
        - njs_value_property
        - njs_value_property_delete
        - njs_value_property_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:829,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_json.c:833,11'
          Dst:             njs_value_property
        - Src:             'src/njs_json.c:842,20'
          Dst:             njs_array_keys
        - Src:             'src/njs_json.c:848,23'
          Dst:             njs_json_internalize_property
        - Src:             'src/njs_json.c:857,27'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_json.c:862,27'
          Dst:             njs_value_property_set
        - Src:             'src/njs_json.c:874,19'
          Dst:             njs_object_length
        - Src:             'src/njs_json.c:880,23'
          Dst:             njs_json_internalize_property
        - Src:             'src/njs_json.c:889,27'
          Dst:             njs_value_property_delete
        - Src:             'src/njs_json.c:894,27'
          Dst:             njs_value_property_set
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:906,5'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:909,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_json.c:914,9'
          Dst:             njs_array_destroy
    - functionName:    njs_json_stringify
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         98
      ICount:          693
      EdgeCount:       130
      CyclomaticComplexity: 34
      functionsReached:
        - njs_json_stringify_array
        - njs_json_stringify_iterator
        - njs_memory_error
        - njs_string_prop
        - njs_string_to_number
        - njs_string_utf8_offset
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_json.c:225,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_json.c:198,19'
          Dst:             njs_json_stringify_array
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_json.c:218,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_json.c:227,18'
          Dst:             njs_string_prop
        - Src:             'src/njs_json.c:228,13'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_json.c:257,12'
          Dst:             njs_json_stringify_iterator
        - Src:             'src/njs_json.c:262,5'
          Dst:             njs_memory_error
    - functionName:    njs_json_parse
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          231
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - njs_json_internalize_property
        - njs_json_parse_exception
        - njs_json_parse_value
        - njs_json_skip_space
        - njs_json_wrap_value
        - njs_string_prop
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:109,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_json.c:115,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_json.c:126,9'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:128,9'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:132,9'
          Dst:             njs_json_parse_value
        - Src:             'src/njs_json.c:137,9'
          Dst:             njs_json_skip_space
        - Src:             'src/njs_json.c:139,9'
          Dst:             njs_json_parse_exception
        - Src:             'src/njs_json.c:146,15'
          Dst:             njs_json_wrap_value
        - Src:             'src/njs_json.c:151,16'
          Dst:             njs_json_internalize_property
    - functionName:    njs_dump_terminal
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1652
      functionLinenumberEnd: 1861
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         187
      ICount:          1561
      EdgeCount:       229
      CyclomaticComplexity: 44
      functionsReached:
        - njs_chb_append0
        - njs_chb_sprintf
        - njs_dtoa2
        - njs_json_append_string
        - njs_number_to_string
        - njs_string_new
        - njs_string_prop
        - njs_symbol_descriptive_string
        - njs_typed_array_to_chain
        - njs_value_property
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_json.c:1661,5'
          Branch Sides:    []
        - Branch String:   'src/njs_json.c:1710,9'
          Branch Sides:    []
        - Branch String:   'src/njs_json.c:1828,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_json.c:1663,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1667,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1672,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1675,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:1681,9'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:1684,13'
          Dst:             njs_json_append_string
        - Src:             'src/njs_json.c:1688,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1693,15'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:1698,9'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:1699,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1713,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1716,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1726,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1730,19'
          Dst:             njs_number_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:1735,13'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:1736,13'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_json.c:1740,19'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:1745,13'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:1746,13'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_json.c:1752,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1753,13'
          Dst:             njs_json_append_string
        - Src:             'src/njs_json.c:1754,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1768,15'
          Dst:             njs_value_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:1775,13'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:1779,13'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_json.c:1782,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1789,15'
          Dst:             njs_value_property
        - Src:             'src/njs_json.c:1795,20'
          Dst:             njs_string_prop
        - Src:             'src/njs_json.c:1796,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1797,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1800,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1803,13'
          Dst:             njs_typed_array_to_chain
        - Src:             'src/njs_json.c:1806,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1809,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1818,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:1850,9'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:1851,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1857,9'
          Dst:             njs_chb_sprintf
    - functionName:    njs_vm_value_dump
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1955
      functionLinenumberEnd: 2159
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         348
      ICount:          2748
      EdgeCount:       475
      CyclomaticComplexity: 129
      functionsReached:
        - njs_array_destroy
        - njs_atom_atomize_key
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_join
        - njs_chb_sprintf
        - njs_dtoa2
        - njs_dump_terminal
        - njs_json_push_stringify_state
        - njs_key_to_index
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_property_query
        - njs_string_eq
        - njs_string_new
        - njs_string_prop
        - njs_symbol_descriptive_string
        - njs_value_property
        - njs_value_to_string
        - njs_vm_exception
        - njs_vm_memory_pool
        - njs_vm_runtime_init
        - njs_vm_value_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:1973,9'
          Dst:             njs_vm_runtime_init
        - Src:             'src/njs_json.c:1977,21'
          Dst:             njs_vm_exception
        - Src:             'src/njs_json.c:1981,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_json.c:1981,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_json.c:1981,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_json.c:1981,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_json.c:1984,15'
          Dst:             njs_dump_terminal
        - Src:             'src/njs_json.c:2000,13'
          Dst:             njs_json_push_stringify_state
        - Src:             'src/njs_json.c:2007,19'
          Dst:             njs_value_property
        - Src:             'src/njs_json.c:2013,24'
          Dst:             njs_string_prop
        - Src:             'src/njs_json.c:2014,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2015,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2018,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2019,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2023,13'
          Dst:             njs_key_to_index
        - Src:             'src/njs_json.c:2023,13'
          Dst:             njs_key_to_index
        - Src:             'src/njs_json.c:2023,13'
          Dst:             njs_key_to_index
        - Src:             'src/njs_json.c:2023,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1931,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2023,13'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_json.c:2023,13'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_json.c:2023,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1946,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2025,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2026,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2028,21'
          Dst:             njs_array_destroy
        - Src:             'src/njs_json.c:2046,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_json.c:2046,15'
          Dst:             njs_property_query
        - Src:             'src/njs_json.c:2064,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2065,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2070,9'
          Dst:             njs_key_to_index
        - Src:             'src/njs_json.c:2070,9'
          Dst:             njs_key_to_index
        - Src:             'src/njs_json.c:2070,9'
          Dst:             njs_key_to_index
        - Src:             'src/njs_json.c:2070,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1931,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2070,9'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_json.c:2070,9'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_json.c:2070,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1946,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:1049,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2072,30'
          Dst:             njs_key_to_index
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:244,9'
          Dst:             njs_string_new
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_symbol_descriptive_string
        - Src:             'src/njs_object.h:250,5'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_object.h:233,5'
          Dst:             njs_string_new
        - Src:             'src/njs_json.c:2074,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2075,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2077,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:2100,21'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:2103,21'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_json.c:2107,17'
          Dst:             njs_string_new
        - Src:             'src/njs_value.h:1157,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_json.c:2115,17'
          Dst:             njs_chb_append0
        - Src:             'src/njs_json.c:2119,21'
          Dst:             njs_json_push_stringify_state
        - Src:             'src/njs_json.c:2127,15'
          Dst:             njs_dump_terminal
        - Src:             'src/njs_json.c:2139,11'
          Dst:             njs_chb_join
        - Src:             'src/njs_json.c:2144,5'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_json.c:2152,5'
          Dst:             njs_memory_error
        - Src:             'src/njs_json.c:2156,5'
          Dst:             njs_vm_value_string
    - functionName:    njs_vm_json_stringify
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vm_invoke
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:276,12'
          Dst:             njs_vm_invoke
    - functionName:    njs_vm_json_parse
      functionSourceFile: '/src/njs/src/njs_json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vm_invoke
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_json.c:170,12'
          Dst:             njs_vm_invoke
    - functionName:    njs_function_bound_call
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1332
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          167
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_call2
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:1311,16'
          Dst:             njs_function_call2
        - Src:             'src/njs_function.c:1315,17'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:1318,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_function.c:1326,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_function.c:1329,5'
          Dst:             njs_mp_free
    - functionName:    njs_function_call2
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_frame_invoke
        - njs_function_lambda_frame
        - njs_function_native_frame
      functionUses:    63
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:521,11'
          Dst:             njs_function_native_frame
        - Src:             'src/njs_function.c:521,11'
          Dst:             njs_function_lambda_frame
        - Src:             'src/njs_function.c:526,12'
          Dst:             njs_function_frame_invoke
    - functionName:    njs_function_native_frame
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          102
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_frame_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:358,13'
          Dst:             njs_function_frame_alloc
    - functionName:    njs_function_lambda_frame
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          260
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - njs_function_frame_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:417,20'
          Dst:             njs_function_frame_alloc
    - functionName:    njs_function_frame_invoke
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 679
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_async_function_frame_invoke
        - njs_function_lambda_call
        - njs_function_native_call
        - njs_function_object_type
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:667,9'
          Dst:             njs_function_object_type
        - Src:             'src/njs_function.c:670,16'
          Dst:             njs_async_function_frame_invoke
        - Src:             'src/njs_function.c:674,16'
          Dst:             njs_function_native_call
        - Src:             'src/njs_function.c:677,16'
          Dst:             njs_function_lambda_call
    - functionName:    njs_function_object_type
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_function_native_call
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_function_frame_free
        - njs_vm_scopes_restore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:652,5'
          Dst:             njs_vm_scopes_restore
        - Src:             'src/njs_function.c:654,5'
          Dst:             njs_function_frame_free
    - functionName:    njs_function_lambda_call
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          304
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - njs_function_capture_global_closures
        - njs_function_rest_parameters_init
        - njs_vmcode_interpreter
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:547,15'
          Dst:             njs_function_capture_global_closures
        - Src:             'src/njs_function.c:579,15'
          Dst:             njs_function_rest_parameters_init
        - Src:             'src/njs_function.c:597,11'
          Dst:             njs_vmcode_interpreter
    - functionName:    njs_function_capture_global_closures
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 833
      functionLinenumberEnd: 890
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          359
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_throw_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_function.c:864,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_function.c:866,21'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:866,21'
          Dst:             njs_memory_error
        - Src:             'src/njs_function.c:871,21'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:871,21'
          Dst:             njs_memory_error
        - Src:             'src/njs_function.c:875,13'
          Dst:             njs_throw_error
    - functionName:    njs_function_rest_parameters_init
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          150
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_array_alloc
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:295,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_function.c:304,22'
          Dst:             njs_mp_alloc
    - functionName:    njs_function_frame_free
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:687,9'
          Dst:             njs_mp_free
    - functionName:    njs_function_frame_alloc
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 472
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          147
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_memory_error
        - njs_mp_align
        - njs_throw_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:487,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:491,17'
          Dst:             njs_mp_align
        - Src:             'src/njs_function.c:493,13'
          Dst:             njs_memory_error
    - functionName:    njs_function_prototype_bind
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1418
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          386
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - njs_dtoa2
        - njs_function_name_set
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_new
        - njs_throw_error
        - njs_value_property
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:1346,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1350,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:1352,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_function.c:1370,11'
          Dst:             njs_value_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_function.c:1376,9'
          Dst:             njs_string_new
        - Src:             'src/njs_function.c:1379,11'
          Dst:             njs_function_name_set
        - Src:             'src/njs_function.c:1404,14'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:1406,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_function.c:1407,9'
          Dst:             njs_mp_free
    - functionName:    njs_function_name_set
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          366
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - njs_dtoa2
        - njs_flathsh_unique_insert
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_symbol_description
        - njs_throw_error
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:134,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_function.c:136,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:152,9'
          Dst:             njs_symbol_description
        - Src:             'src/njs_function.c:159,20'
          Dst:             njs_string_prop
        - Src:             'src/njs_function.c:161,38'
          Dst:             strlen
        - Src:             'src/njs_function.c:162,17'
          Dst:             njs_string_alloc
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_function.c:185,13'
          Dst:             njs_string_new
    - functionName:    njs_function_prototype_apply
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1290
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          346
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_object_length
        - njs_throw_error
        - njs_value_property
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:1245,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1259,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1263,11'
          Dst:             njs_object_length
        - Src:             'src/njs_function.c:1269,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1273,11'
          Dst:             njs_array_alloc
        - Src:             'src/njs_function.c:1281,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_function.c:1289,12'
          Dst:             njs_function_call2
    - functionName:    njs_function_prototype_call
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1212
      functionLinenumberEnd: 1231
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_call2
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:1216,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1229,12'
          Dst:             njs_function_call2
    - functionName:    njs_prototype_function
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1517
      functionLinenumberEnd: 1520
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_eval_function
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1507
      functionLinenumberEnd: 1510
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:1508,5'
          Dst:             njs_throw_error
    - functionName:    njs_function_instance_name
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          206
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_function.c:1203,5'
          Dst:             njs_string_new
    - functionName:    njs_function_instance_length
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1168
      functionLinenumberEnd: 1181
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          113
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_function_constructor
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 1144
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         102
      ICount:          801
      EdgeCount:       139
      CyclomaticComplexity: 39
      functionsReached:
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_join
        - njs_dtoa2
        - njs_function_alloc
        - njs_function_name_set
        - njs_generate_scope
        - njs_generator_init
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_parser
        - njs_parser_init
        - njs_primitive_value_to_chain
        - njs_string_new
        - njs_throw_error
        - njs_value_to_primitive
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:1014,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_function.c:1014,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_function.c:1014,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:1014,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_function.c:1017,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_function.c:1020,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_function.c:1024,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_function.c:1024,15'
          Dst:             njs_primitive_value_to_chain
        - Src:             'src/njs_function.c:1030,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_function.c:1034,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_function.c:1037,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_function.c:1037,15'
          Dst:             njs_primitive_value_to_chain
        - Src:             'src/njs_function.c:1043,5'
          Dst:             njs_chb_append0
        - Src:             'src/njs_function.c:1045,11'
          Dst:             njs_chb_join
        - Src:             'src/njs_function.c:1047,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_function.c:1053,11'
          Dst:             njs_parser_init
        - Src:             'src/njs_function.c:1059,11'
          Dst:             njs_parser
        - Src:             'src/njs_function.c:1092,11'
          Dst:             njs_generator_init
        - Src:             'src/njs_function.c:1094,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1098,12'
          Dst:             njs_generate_scope
        - Src:             'src/njs_function.c:1102,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1108,5'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_function.c:1114,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_function.c:1120,16'
          Dst:             njs_function_alloc
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_function.c:1129,5'
          Dst:             njs_string_new
        - Src:             'src/njs_function.c:1131,11'
          Dst:             njs_function_name_set
        - Src:             'src/njs_function.c:1142,5'
          Dst:             njs_throw_error
    - functionName:    njs_function_alloc
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          158
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - njs_memory_error
        - njs_mp_zalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:24,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_function.c:64,5'
          Dst:             njs_memory_error
    - functionName:    njs_function_property_prototype_set
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 896
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:906,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_function.c:909,9'
          Dst:             njs_throw_error
    - functionName:    njs_function_prototype_create
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 940
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          138
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_function_property_prototype_set
        - njs_object_alloc
        - njs_property_constructor_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:945,21'
          Dst:             njs_object_alloc
        - Src:             'src/njs_function.c:955,13'
          Dst:             njs_function_property_prototype_set
        - Src:             'src/njs_function.c:963,16'
          Dst:             njs_property_constructor_set
    - functionName:    njs_function_capture_closure
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 803
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          249
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:792,21'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:792,21'
          Dst:             njs_memory_error
    - functionName:    njs_function_frame_save
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          195
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_function_prototype_thrower
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:321,5'
          Dst:             njs_throw_error
    - functionName:    njs_function_arguments_object_init
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          290
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - njs_atom_atomize_key
        - njs_object_alloc
        - njs_object_prop_define
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:253,17'
          Dst:             njs_object_alloc
        - Src:             'src/njs_function.c:263,11'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_object.h:279,12'
          Dst:             njs_object_prop_define
    - functionName:    njs_function_copy
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          190
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - njs_function_object_type
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:205,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_function.c:212,12'
          Dst:             njs_function_object_type
    - functionName:    njs_function_value_copy
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_copy
        - njs_memory_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:105,12'
          Dst:             njs_function_copy
        - Src:             'src/njs_function.c:107,9'
          Dst:             njs_memory_error
    - functionName:    njs_vm_function_alloc
      functionSourceFile: '/src/njs/src/njs_function.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          95
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_zalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_function.c:76,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_function.c:78,9'
          Dst:             njs_memory_error
    - functionName:    njs_regexp_value_flags
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regexp_prototype_symbol_split
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1551
      functionLinenumberEnd: 1809
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         186
      ICount:          1597
      EdgeCount:       252
      CyclomaticComplexity: 68
      functionsReached:
        - memchr
        - njs_array_add
        - njs_array_alloc
        - njs_array_expand
        - njs_array_string_add
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_function_new_object
        - njs_object_length
        - njs_regexp_exec
        - njs_regexp_exec_result_free
        - njs_string_alloc
        - njs_string_prop
        - njs_string_to_number
        - njs_string_utf8_offset
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_utf8_stream_length
        - njs_value_property
        - njs_value_property_set
        - njs_value_species_constructor
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_string.h:209,5'
          Branch Sides:    []
        - Branch String:   'src/njs_string.h:209,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_regexp.c:1570,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:1576,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1583,11'
          Dst:             njs_value_species_constructor
        - Src:             'src/njs_regexp.c:1588,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1593,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1598,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_regexp.c:1600,14'
          Dst:             memchr
        - Src:             'src/njs_regexp.c:1602,14'
          Dst:             njs_function_new_object
        - Src:             'src/njs_regexp.c:1614,15'
          Dst:             njs_string_alloc
        - Src:             'src/njs_regexp.c:1626,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_regexp.c:1634,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_regexp.c:1653,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_regexp.c:1656,15'
          Dst:             njs_regexp_exec
        - Src:             'src/njs_regexp.c:1679,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_regexp.c:1684,15'
          Dst:             njs_regexp_exec
        - Src:             'src/njs_regexp.c:1694,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_regexp.c:1708,17'
          Dst:             njs_regexp_exec_result_free
        - Src:             'src/njs_regexp.c:1716,21'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_regexp.c:1717,19'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.h:215,18'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_regexp.c:1726,15'
          Dst:             njs_array_string_add
        - Src:             'src/njs_regexp.c:1733,17'
          Dst:             njs_regexp_exec_result_free
        - Src:             'src/njs_regexp.c:1741,15'
          Dst:             njs_object_length
        - Src:             'src/njs_regexp.c:1749,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1754,19'
          Dst:             njs_array_add
        - Src:             'src/njs_regexp.c:1761,21'
          Dst:             njs_regexp_exec_result_free
        - Src:             'src/njs_regexp.c:1769,13'
          Dst:             njs_regexp_exec_result_free
        - Src:             'src/njs_regexp.c:1778,32'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_string.h:215,18'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_regexp.c:1788,11'
          Dst:             njs_array_string_add
        - Src:             'src/njs_regexp.c:1797,13'
          Dst:             njs_array_expand
    - functionName:    memchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regexp_exec
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1259
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          276
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - njs_function_call2
        - njs_regexp_builtin_exec
        - njs_throw_error
        - njs_type_string
        - njs_value_property
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:1215,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1227,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_regexp.c:1237,13'
          Dst:             njs_type_string
        - Src:             'src/njs_regexp.c:1237,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:1245,13'
          Dst:             njs_type_string
        - Src:             'src/njs_regexp.c:1245,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:1254,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:1258,12'
          Dst:             njs_regexp_builtin_exec
    - functionName:    njs_regexp_exec_result_free
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1170
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_array_destroy
        - njs_flathsh_destroy
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:1167,5'
          Dst:             njs_flathsh_destroy
        - Src:             'src/njs_regexp.c:1169,5'
          Dst:             njs_array_destroy
    - functionName:    njs_regexp_builtin_exec
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          721
      EdgeCount:       121
      CyclomaticComplexity: 35
      functionsReached:
        - njs_memory_error
        - njs_regex_capture
        - njs_regex_is_valid
        - njs_regex_match_data
        - njs_regex_match_data_free
        - njs_regexp_exec_result
        - njs_regexp_match
        - njs_string_index
        - njs_string_prop
        - njs_string_to_number
        - njs_string_utf8_offset
        - njs_symbol_conversion_failed
        - njs_value_property
        - njs_value_property_set
        - njs_value_to_primitive
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:868,11'
          Dst:             njs_value_property
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_regexp.c:882,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_regexp.c:901,9'
          Dst:             njs_regex_is_valid
        - Src:             'src/njs_regexp.c:905,18'
          Dst:             njs_regex_match_data
        - Src:             'src/njs_regexp.c:908,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_regexp.c:917,22'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_regexp.c:926,11'
          Dst:             njs_regexp_match
        - Src:             'src/njs_regexp.c:930,17'
          Dst:             njs_regex_capture
        - Src:             'src/njs_regexp.c:933,25'
          Dst:             njs_string_index
        - Src:             'src/njs_regexp.c:940,19'
          Dst:             njs_value_property_set
        - Src:             'src/njs_regexp.c:943,17'
          Dst:             njs_regex_match_data_free
        - Src:             'src/njs_regexp.c:949,13'
          Dst:             njs_regex_match_data_free
        - Src:             'src/njs_regexp.c:954,18'
          Dst:             njs_regexp_exec_result
        - Src:             'src/njs_regexp.c:956,9'
          Dst:             njs_regex_match_data_free
        - Src:             'src/njs_regexp.c:966,5'
          Dst:             njs_regex_match_data_free
        - Src:             'src/njs_regexp.c:976,15'
          Dst:             njs_value_property_set
    - functionName:    njs_regexp_match
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_regex_match
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:470,11'
          Dst:             njs_regex_match
    - functionName:    njs_regexp_exec_result
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1152
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          554
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_flathsh_unique_insert
        - njs_object_alloc
        - njs_regex_capture
        - njs_string_create
        - njs_string_index
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:1015,13'
          Dst:             njs_array_alloc
        - Src:             'src/njs_regexp.c:1024,13'
          Dst:             njs_regex_capture
        - Src:             'src/njs_regexp.c:1028,20'
          Dst:             njs_regex_capture
        - Src:             'src/njs_regexp.c:1030,19'
          Dst:             njs_string_create
        - Src:             'src/njs_regexp.c:1047,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_regexp.c:1059,9'
          Dst:             njs_regex_capture
        - Src:             'src/njs_regexp.c:1062,17'
          Dst:             njs_string_index
        - Src:             'src/njs_regexp.c:1072,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_regexp.c:1087,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_regexp.c:1101,18'
          Dst:             njs_object_alloc
        - Src:             'src/njs_regexp.c:1113,19'
          Dst:             njs_string_create
        - Src:             'src/njs_regexp.c:1113,19'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_regexp.c:1121,19'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_regexp.c:1144,5'
          Dst:             njs_throw_error
    - functionName:    njs_regexp_match_trace_handler
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:490,5'
          Dst:             njs_throw_error
    - functionName:    njs_regexp_prototype_test
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          130
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_regexp_exec
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:822,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:828,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:833,11'
          Dst:             njs_regexp_exec
    - functionName:    njs_regexp_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 746
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          185
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - njs_string_alloc
        - njs_string_prop
        - njs_throw_error
        - njs_value_property
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:705,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:709,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:714,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:719,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:724,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:729,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_regexp.c:730,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_regexp.c:735,9'
          Dst:             njs_string_alloc
    - functionName:    njs_regexp_prototype_source
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          208
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_dtoa2
        - njs_string_decode_utf8
        - njs_string_new
        - njs_throw_error
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:669,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_regexp.c:675,13'
          Dst:             njs_string_new
        - Src:             'src/njs_regexp.c:679,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:686,18'
          Dst:             strlen
        - Src:             'src/njs_regexp.c:688,12'
          Dst:             njs_string_decode_utf8
    - functionName:    njs_regexp_prototype_flag
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          151
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_regexp.c:634,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_regexp.c:618,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:628,9'
          Dst:             njs_throw_error
    - functionName:    njs_regexp_prototype_flags
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          206
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - njs_string_new
        - njs_throw_error
        - njs_value_property
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:562,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:568,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:577,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:586,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:595,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:604,12'
          Dst:             njs_string_new
    - functionName:    njs_regexp_compile_trace_handler
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:454,5'
          Dst:             njs_throw_error
    - functionName:    njs_regexp_constructor
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          559
      EdgeCount:       86
      CyclomaticComplexity: 21
      functionsReached:
        - njs_dtoa2
        - njs_regexp_create
        - njs_regexp_flags
        - njs_regexp_prototype_source
        - njs_regexp_value_flags
        - njs_string_new
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:119,15'
          Dst:             njs_regexp_prototype_source
        - Src:             'src/njs_regexp.c:124,20'
          Dst:             njs_regexp_value_flags
        - Src:             'src/njs_regexp.c:130,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:142,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_regexp.c:147,9'
          Dst:             njs_string_new
        - Src:             'src/njs_regexp.c:151,20'
          Dst:             njs_regexp_flags
        - Src:             'src/njs_regexp.c:155,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_regexp.c:161,9'
          Dst:             njs_string_new
        - Src:             'src/njs_regexp.c:167,12'
          Dst:             njs_regexp_create
    - functionName:    njs_regexp_flags
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_regexp.c:215,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    njs_regexp_create
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          124
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_regexp_alloc
        - njs_regexp_pattern_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:185,19'
          Dst:             njs_regexp_pattern_create
        - Src:             'src/njs_regexp.c:194,14'
          Dst:             njs_regexp_alloc
    - functionName:    njs_regexp_pattern_create
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         70
      ICount:          548
      EdgeCount:       91
      CyclomaticComplexity: 23
      functionsReached:
        - njs_djb_hash
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_regex_escape
        - njs_regex_is_valid
        - njs_regex_named_captures
        - njs_regexp_pattern_compile
        - njs_throw_error
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/njs_regexp.c:283,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_regexp.c:314,11'
          Dst:             njs_regex_escape
        - Src:             'src/njs_regexp.c:316,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_regexp.c:320,15'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_regexp.c:323,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_regexp.c:340,11'
          Dst:             njs_regexp_pattern_compile
        - Src:             'src/njs_regexp.c:352,11'
          Dst:             njs_regexp_pattern_compile
        - Src:             'src/njs_regexp.c:357,13'
          Dst:             njs_regex_is_valid
        - Src:             'src/njs_regexp.c:360,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:370,9'
          Dst:             njs_regex_is_valid
        - Src:             'src/njs_regexp.c:373,16'
          Dst:             njs_regex_is_valid
        - Src:             'src/njs_regexp.c:380,24'
          Dst:             njs_regex_named_captures
        - Src:             'src/njs_regexp.c:385,27'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_regexp.c:387,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_regexp.c:396,30'
          Dst:             njs_regex_named_captures
        - Src:             'src/njs_regexp.c:397,27'
          Dst:             njs_djb_hash
        - Src:             'src/njs_regexp.c:408,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_regexp.c:413,5'
          Dst:             njs_throw_error
    - functionName:    njs_regexp_alloc
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          238
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_dtoa2
        - njs_memory_error
        - njs_mp_alloc
        - njs_string_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:501,14'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_regexp.c:515,9'
          Dst:             njs_string_new
        - Src:             'src/njs_regexp.c:519,5'
          Dst:             njs_memory_error
    - functionName:    njs_regexp_pattern_compile
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_regex_compile
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:429,11'
          Dst:             njs_regex_compile
    - functionName:    njs_regexp_prototype_last_index
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regexp_prototype_symbol_replace
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1265
      functionLinenumberEnd: 1545
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         268
      ICount:          2203
      EdgeCount:       362
      CyclomaticComplexity: 96
      functionsReached:
        - njs_arr_add
        - njs_arr_destroy
        - njs_arr_init
        - njs_array_alloc
        - njs_array_destroy
        - njs_array_expand
        - njs_atom_atomize_key
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_dtoa2
        - njs_function_call2
        - njs_mp_alloc
        - njs_mp_free
        - njs_object_length
        - njs_regexp_exec
        - njs_regexp_exec_result_free
        - njs_string_create_chb
        - njs_string_get_substitution
        - njs_string_new
        - njs_string_prop
        - njs_string_to_number
        - njs_string_utf8_offset
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_value_property
        - njs_value_property_set
        - njs_value_to_integer
        - njs_value_to_object
        - njs_value_to_primitive
        - njs_value_to_string
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:1283,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:1289,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1294,14'
          Dst:             njs_string_prop
        - Src:             'src/njs_regexp.c:1303,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1309,11'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1318,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_regexp.c:1324,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_regexp.c:1324,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_regexp.c:1324,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_regexp.c:1324,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_regexp.c:1329,9'
          Dst:             njs_arr_init
        - Src:             'src/njs_regexp.c:1335,13'
          Dst:             njs_arr_add
        - Src:             'src/njs_regexp.c:1341,15'
          Dst:             njs_regexp_exec
        - Src:             'src/njs_regexp.c:1358,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1364,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_regexp.c:1369,9'
          Dst:             njs_string_new
        - Src:             'src/njs_regexp.c:1375,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_regexp.c:1386,15'
          Dst:             njs_value_property_set
        - Src:             'src/njs_regexp.c:1403,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1408,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1413,15'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1418,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_regexp.c:1425,15'
          Dst:             njs_object_length
        - Src:             'src/njs_regexp.c:1432,17'
          Dst:             njs_array_alloc
        - Src:             'src/njs_regexp.c:1441,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1450,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1456,15'
          Dst:             njs_value_property
        - Src:             'src/njs_regexp.c:1463,23'
          Dst:             njs_value_to_object
        - Src:             'src/njs_regexp.c:1469,19'
          Dst:             njs_string_get_substitution
        - Src:             'src/njs_regexp.c:1474,19'
          Dst:             njs_array_expand
        - Src:             'src/njs_regexp.c:1488,19'
          Dst:             njs_function_call2
        - Src:             'src/njs_regexp.c:1493,9'
          Dst:             njs_array_destroy
        - Src:             'src/njs_regexp.c:1499,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1504,13'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_regexp.c:1507,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_regexp.c:1509,13'
          Dst:             njs_string_new
        - Src:             'src/njs_regexp.c:1510,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_regexp.c:1512,13'
          Dst:             njs_string_new
        - Src:             'src/njs_regexp.c:1523,13'
          Dst:             njs_regexp_exec_result_free
        - Src:             'src/njs_regexp.c:1528,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_regexp.c:1531,11'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_regexp.c:1541,5'
          Dst:             njs_chb_destroy
        - Src:             'src/njs_regexp.c:1542,5'
          Dst:             njs_arr_destroy
    - functionName:    njs_regexp_prototype_exec
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1204
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          123
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_regexp_builtin_exec
        - njs_throw_error
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:1185,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_regexp.c:1191,11'
          Dst:             njs_value_to_string
        - Src:             'src/njs_regexp.c:1203,12'
          Dst:             njs_regexp_builtin_exec
    - functionName:    njs_regexp_to_string
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 752
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          238
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - njs_decode_utf8_length
        - njs_string_alloc
        - njs_utf8_stream_encode
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:763,16'
          Dst:             strlen
        - Src:             'src/njs_regexp.c:765,14'
          Dst:             njs_decode_utf8_length
        - Src:             'src/njs_regexp.c:777,13'
          Dst:             njs_string_alloc
        - Src:             'src/njs_regexp.c:788,9'
          Dst:             njs_utf8_stream_encode
    - functionName:    njs_regexp_free
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:72,5'
          Dst:             njs_mp_free
    - functionName:    njs_regexp_malloc
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:65,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_regexp_init
      functionSourceFile: '/src/njs/src/njs_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_memory_error
        - njs_regex_compile_ctx_create
        - njs_regex_generic_ctx_create
        - njs_regex_match_data
        - njs_regexp_free
        - njs_regexp_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_regexp.c:38,29'
          Dst:             njs_regex_generic_ctx_create
        - Src:             'src/njs_regexp.c:38,29'
          Dst:             njs_regexp_malloc
        - Src:             'src/njs_regexp.c:38,29'
          Dst:             njs_regexp_free
        - Src:             'src/njs_regexp.c:42,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_regexp.c:46,29'
          Dst:             njs_regex_compile_ctx_create
        - Src:             'src/njs_regexp.c:48,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_regexp.c:52,29'
          Dst:             njs_regex_match_data
        - Src:             'src/njs_regexp.c:54,9'
          Dst:             njs_memory_error
    - functionName:    njs_date_prototype_to_primitive
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1388
      functionLinenumberEnd: 1443
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          201
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - njs_atom_atomize_key
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_date.c:1417,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_date.c:1393,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1393,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:1404,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_date.c:1411,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_date.c:1429,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:1434,11'
          Dst:             njs_value_to_primitive
    - functionName:    njs_date_prototype_set_fields
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1449
      functionLinenumberEnd: 1499
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         107
      ICount:          1169
      EdgeCount:       145
      CyclomaticComplexity: 40
      functionsReached:
        - localtime_r
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1456,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1456,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:289,17'
          Dst:             localtime_r
        - Src:             'src/njs_date.c:1477,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_date.c:1477,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_date.c:1477,15'
          Dst:             njs_string_to_number
        - Src:             'src/njs_date.c:270,17'
          Dst:             localtime_r
    - functionName:    localtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_date_prototype_set_time
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1353
      functionLinenumberEnd: 1382
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          343
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_type_string
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1358,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1358,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
    - functionName:    njs_date_prototype_get_timezone_offset
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1328
      functionLinenumberEnd: 1347
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          127
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - localtime_r
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1332,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1332,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:1341,17'
          Dst:             localtime_r
    - functionName:    njs_date_prototype_get_field
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1302
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          538
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - localtime_r
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1307,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1307,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:289,17'
          Dst:             localtime_r
    - functionName:    njs_date_prototype_to_json
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1505
      functionLinenumberEnd: 1530
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          107
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_function_call2
        - njs_object_property
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1514,15'
          Dst:             njs_object_property
        - Src:             'src/njs_date.c:1522,20'
          Dst:             njs_function_call2
        - Src:             'src/njs_date.c:1527,5'
          Dst:             njs_throw_error
    - functionName:    njs_date_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_date_string
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1175,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1175,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:1184,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:1188,12'
          Dst:             njs_date_string
    - functionName:    njs_date_string
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1195
      functionLinenumberEnd: 1281
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          1251
      EdgeCount:       114
      CyclomaticComplexity: 27
      functionsReached:
        - localtime_r
        - njs_dtoa2
        - njs_sprintf
        - njs_string_new
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_date.c:1214,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_date.c:1208,9'
          Dst:             njs_string_new
        - Src:             'src/njs_date.c:289,17'
          Dst:             localtime_r
        - Src:             'src/njs_date.c:1221,17'
          Dst:             njs_sprintf
        - Src:             'src/njs_date.c:1231,17'
          Dst:             njs_sprintf
        - Src:             'src/njs_date.c:1238,17'
          Dst:             njs_sprintf
        - Src:             'src/njs_date.c:1241,13'
          Dst:             njs_sprintf
        - Src:             'src/njs_date.c:289,17'
          Dst:             localtime_r
        - Src:             'src/njs_date.c:1255,17'
          Dst:             njs_sprintf
        - Src:             'src/njs_date.c:1262,19'
          Dst:             localtime_r
        - Src:             'src/njs_date.c:1273,17'
          Dst:             njs_sprintf
        - Src:             'src/njs_date.c:1280,12'
          Dst:             njs_string_new
    - functionName:    njs_date_prototype_value_of
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1154
      functionLinenumberEnd: 1165
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1156,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1156,9'
          Dst:             njs_throw_error
    - functionName:    njs_date_gmtoff_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          120
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_date_number_parse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1070,13'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:1075,13'
          Dst:             njs_date_number_parse
    - functionName:    njs_date_number_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1096
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          82
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_date_skip_spaces
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_date_skip_week_day
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 922
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          38
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_date_js_string_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 907
      functionDepth:   0
      returnType:      double
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         112
      ICount:          996
      EdgeCount:       156
      CyclomaticComplexity: 46
      functionsReached:
        - localtime_r
        - njs_date_gmtoff_parse
        - njs_date_number_parse
        - njs_date_skip_spaces
        - njs_date_time_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:842,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:847,9'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:852,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:857,9'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:866,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:875,9'
          Dst:             njs_date_time_parse
        - Src:             'src/njs_date.c:884,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:894,18'
          Dst:             njs_date_gmtoff_parse
        - Src:             'src/njs_date.c:270,17'
          Dst:             localtime_r
        - Src:             'src/njs_date.c:270,17'
          Dst:             localtime_r
    - functionName:    njs_date_time_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          122
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_date_number_parse
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1036,9'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:1045,9'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:1058,12'
          Dst:             njs_date_number_parse
    - functionName:    njs_date_month_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 947
      functionLinenumberEnd: 1030
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         69
      ICount:          335
      EdgeCount:       90
      CyclomaticComplexity: 23
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_date.c:949,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    njs_date_rfc2822_string_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      double
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         84
      ICount:          673
      EdgeCount:       117
      CyclomaticComplexity: 35
      functionsReached:
        - localtime_r
        - njs_date_gmtoff_parse
        - njs_date_month_parse
        - njs_date_number_parse
        - njs_date_skip_spaces
        - njs_date_time_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:759,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:764,24'
          Dst:             njs_date_month_parse
        - Src:             'src/njs_date.c:769,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:774,9'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:785,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:794,9'
          Dst:             njs_date_time_parse
        - Src:             'src/njs_date.c:803,9'
          Dst:             njs_date_skip_spaces
        - Src:             'src/njs_date.c:822,18'
          Dst:             njs_date_gmtoff_parse
        - Src:             'src/njs_date.c:270,17'
          Dst:             localtime_r
    - functionName:    njs_date_utc_offset_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          171
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - njs_date_number_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:522,13'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:531,13'
          Dst:             njs_date_number_parse
    - functionName:    njs_date_string_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         148
      ICount:          1144
      EdgeCount:       203
      CyclomaticComplexity: 57
      functionsReached:
        - localtime_r
        - njs_date_js_string_parse
        - njs_date_month_parse
        - njs_date_number_parse
        - njs_date_rfc2822_string_parse
        - njs_date_skip_spaces
        - njs_date_skip_week_day
        - njs_date_time_parse
        - njs_date_utc_offset_parse
        - njs_dtoa2
        - njs_string_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_date.c:558,5'
          Dst:             njs_string_new
        - Src:             'src/njs_date.c:582,12'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:596,20'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:621,13'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:636,13'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:656,13'
          Dst:             njs_date_time_parse
        - Src:             'src/njs_date.c:677,13'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:694,23'
          Dst:             njs_date_utc_offset_parse
        - Src:             'src/njs_date.c:270,17'
          Dst:             localtime_r
        - Src:             'src/njs_date.c:715,16'
          Dst:             njs_date_number_parse
        - Src:             'src/njs_date.c:724,20'
          Dst:             njs_date_rfc2822_string_parse
        - Src:             'src/njs_date.c:727,28'
          Dst:             njs_date_month_parse
        - Src:             'src/njs_date.c:732,20'
          Dst:             njs_date_js_string_parse
        - Src:             'src/njs_date.c:739,13'
          Dst:             njs_date_skip_week_day
        - Src:             'src/njs_date.c:744,13'
          Dst:             njs_date_skip_spaces
    - functionName:    njs_date_args
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          266
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:346,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_date.c:346,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_date.c:346,15'
          Dst:             njs_string_to_number
    - functionName:    njs_date_parse
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          118
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_date_string_parse
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:497,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_date.c:503,16'
          Dst:             njs_date_string_parse
    - functionName:    njs_date_now
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gettimeofday
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:482,28'
          Dst:             gettimeofday
    - functionName:    gettimeofday
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_date_utc
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          471
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - localtime_r
        - njs_date_args
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:464,15'
          Dst:             njs_date_args
        - Src:             'src/njs_date.c:270,17'
          Dst:             localtime_r
    - functionName:    njs_date_constructor
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          634
      EdgeCount:       99
      CyclomaticComplexity: 28
      functionsReached:
        - gettimeofday
        - localtime_r
        - njs_date_alloc
        - njs_date_args
        - njs_date_string
        - njs_date_string_parse
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:405,32'
          Dst:             gettimeofday
        - Src:             'src/njs_date.c:404,16'
          Dst:             njs_date_string
        - Src:             'src/njs_date.c:409,16'
          Dst:             gettimeofday
        - Src:             'src/njs_date.c:414,23'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_date.c:426,20'
          Dst:             njs_date_string_parse
        - Src:             'src/njs_date.c:434,15'
          Dst:             njs_date_args
        - Src:             'src/njs_date.c:270,17'
          Dst:             localtime_r
        - Src:             'src/njs_date.c:442,12'
          Dst:             njs_date_alloc
    - functionName:    njs_date_alloc
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          98
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:372,12'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_date.c:374,9'
          Dst:             njs_memory_error
    - functionName:    njs_date_to_string
      functionSourceFile: '/src/njs/src/njs_date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1286
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_date_string
        - njs_throw_error
        - njs_type_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_date.c:1288,9'
          Dst:             njs_type_string
        - Src:             'src/njs_date.c:1288,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_date.c:1294,12'
          Dst:             njs_date_string
    - functionName:    njs_internal_error_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 933
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          172
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_dtoa2
        - njs_error_prototype_to_string
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_error.c:937,13'
          Dst:             njs_string_new
        - Src:             'src/njs_error.c:942,12'
          Dst:             njs_error_prototype_to_string
    - functionName:    njs_error_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_error_to_string2
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:782,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_error.c:786,12'
          Dst:             njs_error_to_string2
    - functionName:    njs_throw_error
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error_va
      functionUses:    631
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:50,5'
          Dst:             njs_throw_error_va
    - functionName:    njs_error_to_string2
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          528
      EdgeCount:       81
      CyclomaticComplexity: 24
      functionsReached:
        - njs_dtoa2
        - njs_error_stack
        - njs_memory_error
        - njs_string_alloc
        - njs_string_new
        - njs_string_prop
        - njs_value_property
        - njs_value_to_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:689,15'
          Dst:             njs_error_stack
        - Src:             'src/njs_error.c:699,11'
          Dst:             njs_value_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_error.c:706,9'
          Dst:             njs_string_new
        - Src:             'src/njs_error.c:712,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_error.c:718,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_error.c:720,11'
          Dst:             njs_value_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_error.c:727,9'
          Dst:             njs_string_new
        - Src:             'src/njs_error.c:733,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_error.c:741,12'
          Dst:             njs_string_prop
        - Src:             'src/njs_error.c:760,9'
          Dst:             njs_string_alloc
        - Src:             'src/njs_error.c:771,5'
          Dst:             njs_memory_error
    - functionName:    njs_error_stack
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_value_property
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:254,11'
          Dst:             njs_value_property
    - functionName:    njs_memory_error
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 607
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_memory_error_set
      functionUses:    92
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:608,5'
          Dst:             njs_memory_error_set
    - functionName:    njs_memory_error_set
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          95
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_throw_error_va
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_error_new
        - njs_vsprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:38,9'
          Dst:             njs_vsprintf
        - Src:             'src/njs_error.c:40,5'
          Dst:             njs_error_new
    - functionName:    njs_error_new
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          76
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_error_alloc
        - njs_string_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:19,11'
          Dst:             njs_string_create
        - Src:             'src/njs_error.c:24,13'
          Dst:             njs_error_alloc
    - functionName:    njs_error_alloc
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          288
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_memory_error
        - njs_mp_alloc
        - njs_throw_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:277,10'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_error.c:303,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_error.c:305,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_error.c:322,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_error.c:324,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_error.c:341,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_error.c:343,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_error.c:361,5'
          Dst:             njs_memory_error
    - functionName:    njs_error_prototype_stack
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 793
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          522
      EdgeCount:       75
      CyclomaticComplexity: 19
      functionsReached:
        - njs_dtoa2
        - njs_error_to_string2
        - njs_string_alloc
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:818,15'
          Dst:             njs_error_to_string2
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_error.c:823,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_error.c:824,9'
          Dst:             njs_string_new
        - Src:             'src/njs_error.c:828,13'
          Dst:             njs_string_alloc
    - functionName:    njs_error_prototype_value_of
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_memory_error_prototype_create
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_property_prototype_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:636,13'
          Dst:             njs_property_prototype_create
    - functionName:    njs_memory_error_constructor
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_memory_error_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:616,5'
          Dst:             njs_memory_error_set
    - functionName:    njs_error_to_string
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_error_to_string2
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:855,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_error.c:859,12'
          Dst:             njs_error_to_string2
    - functionName:    njs_error_constructor
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          269
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - njs_error_alloc
        - njs_error_stack_attach
        - njs_iterator_to_array
        - njs_throw_error
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:387,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_error.c:391,17'
          Dst:             njs_iterator_to_array
        - Src:             'src/njs_error.c:401,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_error.c:408,13'
          Dst:             njs_error_alloc
        - Src:             'src/njs_error.c:417,5'
          Dst:             njs_error_stack_attach
    - functionName:    njs_error_stack_attach
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         113
      ICount:          823
      EdgeCount:       149
      CyclomaticComplexity: 38
      functionsReached:
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_sprintf
        - njs_dtoa2
        - njs_flathsh_unique_find
        - njs_lookup_code
        - njs_lookup_line
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_create_chb
        - njs_string_new
        - njs_value_property
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:92,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_error.c:92,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_error.c:92,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_error.c:112,20'
          Dst:             njs_lookup_code
        - Src:             'src/njs_error.c:121,24'
          Dst:             njs_lookup_line
        - Src:             'src/njs_error.c:142,19'
          Dst:             njs_flathsh_unique_find
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_error.c:147,21'
          Dst:             njs_string_new
        - Src:             'src/njs_error.c:154,23'
          Dst:             njs_value_property
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_error.c:161,21'
          Dst:             njs_string_new
        - Src:             'src/njs_error.c:184,13'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_error.c:191,9'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_error.c:194,13'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_error.c:197,13'
          Dst:             njs_chb_append0
        - Src:             'src/njs_error.c:202,9'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_error.c:211,11'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_error.c:213,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_error_stack_set
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_sprintf
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_create_chb
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:235,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_error.c:235,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_error.c:235,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_error.c:237,5'
          Dst:             njs_chb_sprintf
        - Src:             'src/njs_error.c:243,12'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_error.c:245,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_error_fmt_new
      functionSourceFile: '/src/njs/src/njs_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_error_new
        - njs_vsprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_error.c:63,9'
          Dst:             njs_vsprintf
        - Src:             'src/njs_error.c:66,5'
          Dst:             njs_error_new
    - functionName:    njs_array_buffer_prototype_slice
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          344
      EdgeCount:       63
      CyclomaticComplexity: 18
      functionsReached:
        - njs_array_buffer_alloc
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array_buffer.c:204,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array_buffer.c:211,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array_buffer.c:220,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array_buffer.c:228,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array_buffer.c:234,14'
          Dst:             njs_array_buffer_alloc
    - functionName:    njs_array_buffer_alloc
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          161
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_throw_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array_buffer.c:20,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array_buffer.c:26,25'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_array_buffer.c:29,25'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array_buffer.c:53,5'
          Dst:             njs_memory_error
        - Src:             'src/njs_array_buffer.c:59,5'
          Dst:             njs_throw_error
    - functionName:    njs_array_buffer_prototype_byte_length
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          129
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array_buffer.c:175,9'
          Dst:             njs_throw_error
    - functionName:    njs_array_buffer_is_view
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          50
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_array_buffer_get_this
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_array_buffer_constructor
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          182
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_array_buffer_alloc
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array_buffer.c:75,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_array_buffer.c:82,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_array_buffer.c:82,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_array_buffer.c:87,13'
          Dst:             njs_array_buffer_alloc
    - functionName:    njs_array_buffer_detach
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array_buffer.c:254,9'
          Dst:             njs_throw_error
    - functionName:    njs_array_buffer_writable
      functionSourceFile: '/src/njs/src/njs_array_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_array_buffer.c:127,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_array_buffer.c:129,9'
          Dst:             njs_memory_error
    - functionName:    njs_data_view_prototype_set
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2564
      functionLinenumberEnd: 2667
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         109
      ICount:          867
      EdgeCount:       137
      CyclomaticComplexity: 30
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_value_to_integer
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:2614,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:2579,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2583,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:2583,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2588,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:2588,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:2588,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:2601,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2606,9'
          Dst:             njs_throw_error
    - functionName:    njs_data_view_prototype_get
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2444
      functionLinenumberEnd: 2558
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         72
      ICount:          553
      EdgeCount:       84
      CyclomaticComplexity: 14
      functionsReached:
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:2489,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:2527,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:2459,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2463,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:2463,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2476,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2481,9'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_generic_compare
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1874
      functionLinenumberEnd: 1920
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          335
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - njs_function_call2
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_value_to_primitive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:1890,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_typed_array.c:1895,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:1895,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:1895,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:1901,9'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_get_f64
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1856
      functionLinenumberEnd: 1857
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_f64
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1800
      functionLinenumberEnd: 1801
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_get_f32
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1849
      functionLinenumberEnd: 1850
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_f32
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1793
      functionLinenumberEnd: 1794
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_get_i32
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1842
      functionLinenumberEnd: 1843
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_i32
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1742
      functionLinenumberEnd: 1748
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_get_u32
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1835
      functionLinenumberEnd: 1836
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_u32
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1754
      functionLinenumberEnd: 1760
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_get_i16
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1828
      functionLinenumberEnd: 1829
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_i16
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1728
      functionLinenumberEnd: 1729
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_get_u16
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1821
      functionLinenumberEnd: 1822
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_u16
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1735
      functionLinenumberEnd: 1736
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_get_i8
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1814
      functionLinenumberEnd: 1815
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_i8
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1714
      functionLinenumberEnd: 1715
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_get_u8
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1807
      functionLinenumberEnd: 1808
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_compare_u8
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1721
      functionLinenumberEnd: 1722
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_prototype_sort
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1926
      functionLinenumberEnd: 2063
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         106
      ICount:          723
      EdgeCount:       115
      CyclomaticComplexity: 11
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_qsort
        - njs_throw_error
        - njs_typed_array_alloc
        - njs_typed_array_writable
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:1978,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:1938,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1944,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1951,17'
          Dst:             njs_typed_array_alloc
        - Src:             'src/njs_typed_array.c:1968,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2024,14'
          Dst:             njs_typed_array_writable
        - Src:             'src/njs_typed_array.c:2036,16'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_typed_array.c:2038,13'
          Dst:             njs_memory_error
        - Src:             'src/njs_typed_array.c:2046,5'
          Dst:             njs_qsort
        - Src:             'src/njs_typed_array.c:2057,9'
          Dst:             njs_mp_free
    - functionName:    njs_typed_array_alloc
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         223
      ICount:          1539
      EdgeCount:       275
      CyclomaticComplexity: 54
      functionsReached:
        - njs_array_buffer_alloc
        - njs_atom_atomize_key
        - njs_memory_error
        - njs_mp_zalloc
        - njs_object_length
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_typed_array_prop_set
        - njs_value_property
        - njs_value_to_integer
        - njs_value_to_primitive
      functionUses:    7
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:54,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:54,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:60,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:66,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:66,19'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:73,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:78,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:78,19'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:86,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:92,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:98,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:109,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:116,15'
          Dst:             njs_object_length
        - Src:             'src/njs_typed_array.c:124,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:124,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:133,18'
          Dst:             njs_array_buffer_alloc
        - Src:             'src/njs_typed_array.c:139,13'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_typed_array.c:153,17'
          Dst:             njs_typed_array_prop_set
        - Src:             'src/njs_typed_array.c:163,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_typed_array.c:171,23'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:171,23'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:171,23'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:177,13'
          Dst:             njs_typed_array_prop_set
        - Src:             'src/njs_typed_array.c:192,5'
          Dst:             njs_memory_error
    - functionName:    njs_typed_array_writable
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_array_buffer_writable
        - njs_throw_error
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:427,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:431,11'
          Dst:             njs_array_buffer_writable
    - functionName:    njs_typed_array_prop_set
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          385
      EdgeCount:       60
      CyclomaticComplexity: 13
      functionsReached:
        - lrint
      functionUses:    8
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.c:602,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:610,31'
          Dst:             lrint
    - functionName:    lrint
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_prototype_set
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         152
      ICount:          1057
      EdgeCount:       178
      CyclomaticComplexity: 28
      functionsReached:
        - njs_atom_atomize_key
        - njs_object_length
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_typed_array_prop_set
        - njs_typed_array_writable
        - njs_value_property
        - njs_value_to_integer
        - njs_value_to_object
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:687,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:695,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:701,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:705,14'
          Dst:             njs_typed_array_writable
        - Src:             'src/njs_typed_array.c:715,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:724,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:731,13'
          Dst:             njs_typed_array_prop_set
        - Src:             'src/njs_typed_array.c:736,15'
          Dst:             njs_value_to_object
        - Src:             'src/njs_typed_array.c:741,15'
          Dst:             njs_object_length
        - Src:             'src/njs_typed_array.c:749,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:756,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_typed_array.c:764,23'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:764,23'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:764,23'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:771,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:775,13'
          Dst:             njs_typed_array_prop_set
    - functionName:    njs_typed_array_prototype_reverse
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1622
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          682
      EdgeCount:       95
      CyclomaticComplexity: 8
      functionsReached:
        - njs_throw_error
        - njs_typed_array_alloc
        - njs_typed_array_writable
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:1662,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:1634,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1640,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1647,17'
          Dst:             njs_typed_array_alloc
        - Src:             'src/njs_typed_array.c:1657,14'
          Dst:             njs_typed_array_writable
    - functionName:    njs_typed_array_prototype_reduce
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1539
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         77
      ICount:          720
      EdgeCount:       88
      CyclomaticComplexity: 13
      functionsReached:
        - njs_function_call2
        - njs_throw_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:1550,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1558,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1565,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1587,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1597,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1607,16'
          Dst:             njs_function_call2
    - functionName:    njs_typed_array_prototype_fill
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 917
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         144
      ICount:          994
      EdgeCount:       182
      CyclomaticComplexity: 40
      functionsReached:
        - lrint
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_typed_array_writable
        - njs_value_to_integer
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:850,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:804,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:810,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:817,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:817,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:817,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:822,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:833,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:841,14'
          Dst:             njs_typed_array_writable
        - Src:             'src/njs_typed_array.c:859,18'
          Dst:             lrint
    - functionName:    njs_typed_array_prototype_join
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2104
      functionLinenumberEnd: 2155
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          359
      EdgeCount:       55
      CyclomaticComplexity: 12
      functionsReached:
        - njs_chb_destroy
        - njs_chb_init
        - njs_dtoa2
        - njs_mp_alloc
        - njs_mp_free
        - njs_string_create_chb
        - njs_string_new
        - njs_throw_error
        - njs_typed_array_to_chain
        - njs_value_to_string
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:2113,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2119,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2129,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_typed_array.c:2137,9'
          Dst:             njs_string_new
        - Src:             'src/njs_typed_array.c:2142,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2146,5'
          Dst:             njs_vm_memory_pool
        - Src:             'src/njs_typed_array.c:2146,5'
          Dst:             njs_chb_init
        - Src:             'src/njs_typed_array.c:2146,5'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_typed_array.c:2146,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_typed_array.c:2148,5'
          Dst:             njs_typed_array_to_chain
        - Src:             'src/njs_typed_array.c:2150,11'
          Dst:             njs_string_create_chb
        - Src:             'src/njs_typed_array.c:2152,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_typed_array_to_chain
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2069
      functionLinenumberEnd: 2098
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          301
      EdgeCount:       43
      CyclomaticComplexity: 4
      functionsReached:
        - njs_chb_append0
        - njs_chb_drop
        - njs_number_to_chain
        - njs_string_prop
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:2077,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_typed_array.c:2093,9'
          Dst:             njs_number_to_chain
        - Src:             'src/njs_typed_array.c:2094,9'
          Dst:             njs_chb_append0
        - Src:             'src/njs_typed_array.c:2097,5'
          Dst:             njs_chb_drop
    - functionName:    njs_typed_array_prototype_index_of
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1315
      functionLinenumberEnd: 1533
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         179
      ICount:          958
      EdgeCount:       228
      CyclomaticComplexity: 51
      functionsReached:
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:1406,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:1330,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1346,19'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:1372,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:1394,9'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_prototype_iterator
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1121
      functionLinenumberEnd: 1309
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         127
      ICount:          1047
      EdgeCount:       147
      CyclomaticComplexity: 22
      functionsReached:
        - njs_arr_add
        - njs_arr_destroy
        - njs_arr_init
        - njs_function_call2
        - njs_throw_error
        - njs_typed_array_set_value
        - njs_typed_array_species_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:1154,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:1192,9'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:1211,13'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.c:1253,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:1134,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1143,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1157,15'
          Dst:             njs_typed_array_species_create
        - Src:             'src/njs_typed_array.c:1168,13'
          Dst:             njs_arr_init
        - Src:             'src/njs_typed_array.c:1176,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1187,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_typed_array.c:1228,19'
          Dst:             njs_typed_array_set_value
        - Src:             'src/njs_typed_array.c:1242,17'
          Dst:             njs_arr_add
        - Src:             'src/njs_typed_array.c:1276,19'
          Dst:             njs_typed_array_species_create
        - Src:             'src/njs_typed_array.c:1289,23'
          Dst:             njs_typed_array_set_value
        - Src:             'src/njs_typed_array.c:1306,5'
          Dst:             njs_arr_destroy
    - functionName:    njs_typed_array_species_create
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_typed_array_create
        - njs_value_species_constructor
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:269,11'
          Dst:             njs_value_species_constructor
        - Src:             'src/njs_typed_array.c:275,12'
          Dst:             njs_typed_array_create
    - functionName:    njs_typed_array_set_value
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          189
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_typed_array_prop_set
        - njs_typed_array_writable
        - njs_value_to_primitive
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:653,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:653,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:653,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:663,14'
          Dst:             njs_typed_array_writable
        - Src:             'src/njs_typed_array.c:668,5'
          Dst:             njs_typed_array_prop_set
    - functionName:    njs_typed_array_create
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          199
      EdgeCount:       36
      CyclomaticComplexity: 7
      functionsReached:
        - njs_throw_error
        - njs_value_construct
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:227,11'
          Dst:             njs_value_construct
        - Src:             'src/njs_typed_array.c:233,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:240,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:248,9'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_prototype_iterator_obj
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2161
      functionLinenumberEnd: 2178
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_array_iterator_create
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:2167,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2173,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2177,12'
          Dst:             njs_array_iterator_create
    - functionName:    njs_typed_array_prototype_copy_within
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1040
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          554
      EdgeCount:       107
      CyclomaticComplexity: 21
      functionsReached:
        - njs_throw_error
        - njs_typed_array_writable
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:1050,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1056,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1064,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:1073,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:1085,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:1101,14'
          Dst:             njs_typed_array_writable
    - functionName:    njs_typed_array_prototype_length
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          173
      EdgeCount:       28
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:482,9'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_prototype_byte_offset
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          203
      EdgeCount:       35
      CyclomaticComplexity: 6
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:565,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:575,13'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_prototype_byte_length
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          137
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:532,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:542,13'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_prototype_buffer
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:509,9'
          Dst:             njs_throw_error
    - functionName:    njs_typed_array_get_string_tag
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          158
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_dtoa2
        - njs_string_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_typed_array.c:465,5'
          Dst:             njs_string_new
    - functionName:    njs_typed_array_from
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         79
      ICount:          672
      EdgeCount:       107
      CyclomaticComplexity: 30
      functionsReached:
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_object_length
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_type_string
        - njs_typed_array_create
        - njs_typed_array_prop_set
        - njs_value_property
        - njs_value_to_object
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:339,9'
          Dst:             njs_type_string
        - Src:             'src/njs_typed_array.c:339,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:347,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:358,11'
          Dst:             njs_value_to_object
        - Src:             'src/njs_typed_array.c:363,11'
          Dst:             njs_object_length
        - Src:             'src/njs_typed_array.c:369,11'
          Dst:             njs_typed_array_create
        - Src:             'src/njs_typed_array.c:379,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_typed_array.c:387,19'
          Dst:             njs_function_call2
        - Src:             'src/njs_typed_array.c:393,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:393,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:393,15'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:399,13'
          Dst:             njs_typed_array_prop_set
    - functionName:    njs_typed_array_of
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          303
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_type_string
        - njs_typed_array_create
        - njs_typed_array_prop_set
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:293,9'
          Dst:             njs_type_string
        - Src:             'src/njs_typed_array.c:293,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:301,11'
          Dst:             njs_typed_array_create
        - Src:             'src/njs_typed_array.c:309,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_typed_array.c:309,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_typed_array.c:309,15'
          Dst:             njs_string_to_number
        - Src:             'src/njs_typed_array.c:314,9'
          Dst:             njs_typed_array_prop_set
    - functionName:    njs_typed_array_get_this
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_constructor
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          81
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_throw_error
        - njs_typed_array_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:205,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:209,13'
          Dst:             njs_typed_array_alloc
    - functionName:    njs_data_view_constructor
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2345
      functionLinenumberEnd: 2421
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          441
      EdgeCount:       75
      CyclomaticComplexity: 22
      functionsReached:
        - njs_memory_error
        - njs_mp_zalloc
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:2352,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2357,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2364,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:2364,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2371,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2376,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:2376,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2382,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2388,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:2396,12'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_typed_array.c:2418,5'
          Dst:             njs_memory_error
    - functionName:    njs_typed_array_constructor_intrinsic
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2184
      functionLinenumberEnd: 2187
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_typed_array.c:2185,5'
          Dst:             njs_throw_error
    - functionName:    njs_slice_memcpy
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 922
      functionLinenumberEnd: 930
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          86
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_typed_array_prototype_slice
      functionSourceFile: '/src/njs/src/njs_typed_array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 1034
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         139
      ICount:          972
      EdgeCount:       159
      CyclomaticComplexity: 22
      functionsReached:
        - njs_slice_memcpy
        - njs_throw_error
        - njs_typed_array_prop_set
        - njs_typed_array_species_create
        - njs_value_to_integer
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_typed_array.c:946,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:954,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:958,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:960,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:972,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_typed_array.c:974,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:987,15'
          Dst:             njs_typed_array_species_create
        - Src:             'src/njs_typed_array.c:999,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_typed_array.c:1011,13'
          Dst:             njs_slice_memcpy
        - Src:             'src/njs_typed_array.c:1017,17'
          Dst:             njs_typed_array_prop_set
        - Src:             'src/njs_typed_array.c:1032,12'
          Dst:             njs_typed_array_species_create
    - functionName:    njs_promise_catch_finally_return
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1081
      functionLinenumberEnd: 1083
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_vm_throw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1082,5'
          Dst:             njs_vm_throw
    - functionName:    njs_promise_then_finally_return
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1072
      functionLinenumberEnd: 1074
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_promise_then_finally_function
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1033
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          157
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_function_call2
        - njs_promise_create_function
        - njs_promise_invoke_then
        - njs_promise_resolve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1043,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1049,11'
          Dst:             njs_promise_resolve
        - Src:             'src/njs_promise.c:1054,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:1065,12'
          Dst:             njs_promise_invoke_then
    - functionName:    njs_promise_resolve
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 1158
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          319
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - njs_function_call2
        - njs_promise_new_capability
        - njs_string_eq
        - njs_value_property
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:687,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1157,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_promise.c:698,18'
          Dst:             njs_promise_new_capability
        - Src:             'src/njs_promise.c:703,11'
          Dst:             njs_function_call2
    - functionName:    njs_promise_create_function
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_memory_error
        - njs_mp_free
        - njs_mp_zalloc
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:245,16'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_promise.c:251,19'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_promise.c:253,13'
          Dst:             njs_mp_free
        - Src:             'src/njs_promise.c:272,5'
          Dst:             njs_memory_error
    - functionName:    njs_promise_invoke_then
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          99
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_function_call2
        - njs_throw_error
        - njs_value_property
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:551,11'
          Dst:             njs_value_property
        - Src:             'src/njs_promise.c:561,16'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:567,5'
          Dst:             njs_throw_error
    - functionName:    njs_promise_new_capability
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          214
      EdgeCount:       25
      CyclomaticComplexity: 9
      functionsReached:
        - njs_function_call2
        - njs_function_new_object
        - njs_memory_error
        - njs_mp_zalloc
        - njs_promise_create_function
        - njs_promise_value_constructor
        - njs_throw_error
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:329,11'
          Dst:             njs_promise_value_constructor
        - Src:             'src/njs_promise.c:334,18'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_promise.c:336,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_promise.c:340,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:356,14'
          Dst:             njs_function_new_object
        - Src:             'src/njs_promise.c:363,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:370,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:375,9'
          Dst:             njs_throw_error
    - functionName:    njs_promise_value_constructor
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          73
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_value_property
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:394,11'
          Dst:             njs_value_property
        - Src:             'src/njs_promise.c:400,9'
          Dst:             njs_throw_error
    - functionName:    njs_promise_capability_executor
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          121
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:419,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:424,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:429,9'
          Dst:             njs_throw_error
    - functionName:    njs_promise_prototype_finally
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 1027
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          267
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - njs_mp_free
        - njs_promise_create_function
        - njs_promise_invoke_then
        - njs_throw_error
        - njs_value_species_constructor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:967,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:973,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:982,11'
          Dst:             njs_value_species_constructor
        - Src:             'src/njs_promise.c:992,16'
          Dst:             njs_promise_invoke_then
        - Src:             'src/njs_promise.c:995,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:1010,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:1012,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_promise.c:1026,12'
          Dst:             njs_promise_invoke_then
    - functionName:    njs_promise_constructor
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          120
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_promise_constructor_call
        - njs_throw_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:158,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:163,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:169,15'
          Dst:             njs_promise_constructor_call
    - functionName:    njs_promise_constructor_call
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          223
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - njs_function_call2
        - njs_promise_alloc
        - njs_promise_create_resolving_functions
        - njs_vm_exception
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:209,15'
          Dst:             njs_promise_alloc
        - Src:             'src/njs_promise.c:214,11'
          Dst:             njs_promise_create_resolving_functions
        - Src:             'src/njs_promise.c:219,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:226,18'
          Dst:             njs_vm_exception
        - Src:             'src/njs_promise.c:228,15'
          Dst:             njs_function_call2
    - functionName:    njs_promise_alloc
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 837
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          161
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:114,15'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_promise.c:144,5'
          Dst:             njs_memory_error
    - functionName:    njs_promise_create_resolving_functions
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          130
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - njs_promise_create_function
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:290,20'
          Dst:             njs_promise_create_function
    - functionName:    njs_promise_resolve_function
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 1158
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         112
      ICount:          1125
      EdgeCount:       155
      CyclomaticComplexity: 45
      functionsReached:
        - njs_error_fmt_new
        - njs_promise_create_function
        - njs_string_eq
        - njs_value_property
        - njs_vm_enqueue_job
        - njs_vm_exception
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value.h:1157,12'
          Dst:             njs_string_eq
        - Src:             'src/njs_promise.c:598,9'
          Dst:             njs_error_fmt_new
        - Src:             'src/njs_promise.c:540,12'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:540,12'
          Dst:             njs_vm_enqueue_job
        - Src:             'src/njs_promise.c:613,11'
          Dst:             njs_value_property
        - Src:             'src/njs_promise.c:619,17'
          Dst:             njs_vm_exception
        - Src:             'src/njs_promise.c:540,12'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:540,12'
          Dst:             njs_vm_enqueue_job
        - Src:             'src/njs_promise.c:637,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:644,11'
          Dst:             njs_vm_enqueue_job
        - Src:             'src/njs_promise.c:503,12'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:503,12'
          Dst:             njs_vm_enqueue_job
    - functionName:    njs_promise_reject_function
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          310
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - njs_promise_create_function
        - njs_vm_enqueue_job
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:540,12'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:540,12'
          Dst:             njs_vm_enqueue_job
    - functionName:    njs_promise_reaction_job
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1143
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          320
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - njs_function_call2
        - njs_vm_exception
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1111,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1118,21'
          Dst:             njs_vm_exception
        - Src:             'src/njs_promise.c:1130,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1134,15'
          Dst:             njs_function_call2
    - functionName:    njs_promise_resolve_thenable_job
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1179
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          264
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - njs_function_call2
        - njs_promise_create_resolving_functions
        - njs_vm_exception
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1155,11'
          Dst:             njs_promise_create_resolving_functions
        - Src:             'src/njs_promise.c:1161,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1169,17'
          Dst:             njs_vm_exception
        - Src:             'src/njs_promise.c:1171,15'
          Dst:             njs_function_call2
    - functionName:    njs_promise_prototype_catch
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 944
      functionLinenumberEnd: 951
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_promise_invoke_then
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:950,12'
          Dst:             njs_promise_invoke_then
    - functionName:    njs_promise_prototype_then
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          160
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - njs_promise_create_function
        - njs_promise_new_capability
        - njs_promise_perform_then
        - njs_throw_error
        - njs_value_species_constructor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:790,16'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:800,11'
          Dst:             njs_value_species_constructor
        - Src:             'src/njs_promise.c:806,18'
          Dst:             njs_promise_new_capability
        - Src:             'src/njs_promise.c:814,12'
          Dst:             njs_promise_perform_then
        - Src:             'src/njs_promise.c:819,5'
          Dst:             njs_throw_error
    - functionName:    njs_promise_perform_then
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          370
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_promise_create_function
        - njs_vm_enqueue_job
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:850,26'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_promise.c:853,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_promise.c:861,25'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_promise.c:864,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_promise.c:877,20'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:900,15'
          Dst:             njs_vm_enqueue_job
    - functionName:    njs_promise_perform_race_handler
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1738
      functionLinenumberEnd: 1764
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          109
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_function_call2
        - njs_promise_invoke_then
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1750,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1761,12'
          Dst:             njs_promise_invoke_then
    - functionName:    njs_promise_all_resolve_element_functions
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1376
      functionLinenumberEnd: 1410
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          269
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_mp_free
        - njs_value_property_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1392,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1399,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_promise.c:1401,16'
          Dst:             njs_function_call2
    - functionName:    njs_promise_any_reject_element_functions
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1631
      functionLinenumberEnd: 1679
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          416
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_error_alloc
        - njs_error_stack_attach
        - njs_function_call2
        - njs_mp_free
        - njs_string_new
        - njs_value_property_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1648,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1655,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_promise.c:1657,9'
          Dst:             njs_string_new
        - Src:             'src/njs_promise.c:1660,17'
          Dst:             njs_error_alloc
        - Src:             'src/njs_promise.c:1669,9'
          Dst:             njs_error_stack_attach
        - Src:             'src/njs_promise.c:1671,16'
          Dst:             njs_function_call2
    - functionName:    njs_promise_all_settled_element_functions
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1494
      functionLinenumberEnd: 1559
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          554
      EdgeCount:       68
      CyclomaticComplexity: 20
      functionsReached:
        - njs_atom_atomize_key
        - njs_dtoa2
        - njs_function_call2
        - njs_mp_free
        - njs_object_alloc
        - njs_string_new
        - njs_value_property_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1511,11'
          Dst:             njs_object_alloc
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_promise.c:1519,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_promise.c:1523,9'
          Dst:             njs_string_new
        - Src:             'src/njs_promise.c:1527,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1533,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1541,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1548,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_promise.c:1550,16'
          Dst:             njs_function_call2
    - functionName:    njs_promise_perform_all
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1235
      functionLinenumberEnd: 1304
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          396
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - njs_array_alloc
        - njs_dtoa2
        - njs_error_alloc
        - njs_error_stack_attach
        - njs_function_call2
        - njs_memory_error
        - njs_mp_alloc
        - njs_mp_free
        - njs_object_iterate
        - njs_object_length
        - njs_string_new
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1242,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:1248,11'
          Dst:             njs_object_length
        - Src:             'src/njs_promise.c:1253,24'
          Dst:             njs_array_alloc
        - Src:             'src/njs_promise.c:1258,24'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_promise.c:1260,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_promise.c:1269,11'
          Dst:             njs_object_iterate
        - Src:             'src/njs_promise.c:1275,9'
          Dst:             njs_mp_free
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_promise.c:1278,9'
          Dst:             njs_string_new
        - Src:             'src/njs_promise.c:1282,21'
          Dst:             njs_error_alloc
        - Src:             'src/njs_promise.c:1291,13'
          Dst:             njs_error_stack_attach
        - Src:             'src/njs_promise.c:1294,15'
          Dst:             njs_function_call2
    - functionName:    njs_promise_perform_any_handler
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1565
      functionLinenumberEnd: 1625
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          347
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_promise_create_function
        - njs_promise_invoke_then
        - njs_value_property_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1585,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1591,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1597,19'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:1619,11'
          Dst:             njs_promise_invoke_then
    - functionName:    njs_promise_perform_all_handler
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1370
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          347
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_promise_create_function
        - njs_promise_invoke_then
        - njs_value_property_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1330,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1336,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1342,20'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:1364,11'
          Dst:             njs_promise_invoke_then
    - functionName:    njs_promise_perform_all_settled_handler
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1416
      functionLinenumberEnd: 1487
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          391
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - njs_atom_atomize_key
        - njs_function_call2
        - njs_promise_create_function
        - njs_promise_invoke_then
        - njs_value_property_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1436,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_promise.c:1442,11'
          Dst:             njs_function_call2
        - Src:             'src/njs_promise.c:1448,20'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:1462,19'
          Dst:             njs_promise_create_function
        - Src:             'src/njs_promise.c:1481,11'
          Dst:             njs_promise_invoke_then
    - functionName:    njs_promise_species
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1770
      functionLinenumberEnd: 1773
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_promise_race
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1685
      functionLinenumberEnd: 1732
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          166
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - njs_object_iterate
        - njs_object_length
        - njs_promise_new_capability
        - njs_promise_perform_race_handler
        - njs_throw_error
        - njs_value_property
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:1694,24'
          Dst:             njs_promise_new_capability
        - Src:             'src/njs_promise.c:1699,11'
          Dst:             njs_value_property
        - Src:             'src/njs_promise.c:1706,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:1710,11'
          Dst:             njs_object_length
        - Src:             'src/njs_promise.c:1723,11'
          Dst:             njs_object_iterate
        - Src:             'src/njs_promise.c:1723,11'
          Dst:             njs_promise_perform_race_handler
    - functionName:    njs_promise_all
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1185
      functionLinenumberEnd: 1228
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          131
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - njs_promise_new_capability
        - njs_promise_perform_all
        - njs_throw_error
        - njs_value_property
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_promise.c:1212,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_promise.c:1193,24'
          Dst:             njs_promise_new_capability
        - Src:             'src/njs_promise.c:1198,11'
          Dst:             njs_value_property
        - Src:             'src/njs_promise.c:1205,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:1226,12'
          Dst:             njs_promise_perform_all
    - functionName:    njs_promise_object_reject
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          126
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_function_call2
        - njs_promise_new_capability
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:753,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:757,18'
          Dst:             njs_promise_new_capability
        - Src:             'src/njs_promise.c:762,11'
          Dst:             njs_function_call2
    - functionName:    njs_promise_object_resolve
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_promise_resolve
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:669,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_promise.c:673,12'
          Dst:             njs_promise_resolve
    - functionName:    njs_promise_result
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_promise_state
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 921
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_vm_promise_create
      functionSourceFile: '/src/njs/src/njs_promise.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          75
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_promise_alloc
        - njs_promise_create_resolving_functions
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_promise.c:186,15'
          Dst:             njs_promise_alloc
        - Src:             'src/njs_promise.c:191,11'
          Dst:             njs_promise_create_resolving_functions
    - functionName:    njs_array_iterator_prototype_next
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          253
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - njs_array_iterator_next
        - njs_object_alloc
        - njs_object_property_add
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_iterator.c:214,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_iterator.c:219,14'
          Dst:             njs_object_alloc
        - Src:             'src/njs_iterator.c:226,18'
          Dst:             njs_object_property_add
        - Src:             'src/njs_iterator.c:231,17'
          Dst:             njs_object_property_add
        - Src:             'src/njs_iterator.c:236,11'
          Dst:             njs_array_iterator_next
    - functionName:    njs_array_iterator_next
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          797
      EdgeCount:       115
      CyclomaticComplexity: 22
      functionsReached:
        - njs_array_alloc
        - njs_atom_atomize_key
        - njs_mp_free
        - njs_object_length
        - njs_throw_error
        - njs_value_property
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
        - Branch String:   'src/njs_iterator.c:130,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_iterator.c:94,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_iterator.c:110,15'
          Dst:             njs_object_length
        - Src:             'src/njs_iterator.c:120,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_iterator.c:141,17'
          Dst:             njs_array_alloc
        - Src:             'src/njs_iterator.c:153,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_iterator.c:161,5'
          Dst:             njs_mp_free
    - functionName:    njs_iterator_prototype_get_this
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_iterator_to_array_handler
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          154
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - njs_atom_atomize_key
        - njs_value_property_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_iterator.c:682,12'
          Dst:             njs_value_property_set
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1049,12'
          Dst:             njs_value_property_set
    - functionName:    njs_iterator_to_array
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          108
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_array_alloc
        - njs_iterator_to_array_handler
        - njs_mp_free
        - njs_object_iterate
        - njs_object_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_iterator.c:650,11'
          Dst:             njs_object_length
        - Src:             'src/njs_iterator.c:655,17'
          Dst:             njs_array_alloc
        - Src:             'src/njs_iterator.c:664,11'
          Dst:             njs_object_iterate
        - Src:             'src/njs_iterator.c:664,11'
          Dst:             njs_iterator_to_array_handler
        - Src:             'src/njs_iterator.c:666,9'
          Dst:             njs_mp_free
    - functionName:    njs_object_iterate
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         108
      ICount:          781
      EdgeCount:       147
      CyclomaticComplexity: 41
      functionsReached:
        - njs_array_destroy
        - njs_array_indices
        - njs_atom_atomize_key
        - njs_iterator_object_handler
        - njs_string_new
        - njs_string_prop
        - njs_string_to_index
        - njs_value_property
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_iterator.c:308,23'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_iterator.c:338,18'
          Dst:             njs_string_prop
        - Src:             'src/njs_iterator.c:347,23'
          Dst:             njs_string_new
        - Src:             'src/njs_iterator.c:368,23'
          Dst:             njs_string_new
        - Src:             'src/njs_iterator.c:396,16'
          Dst:             njs_array_indices
        - Src:             'src/njs_iterator.c:402,19'
          Dst:             njs_string_to_index
        - Src:             'src/njs_iterator.c:408,19'
          Dst:             njs_iterator_object_handler
        - Src:             'src/njs_iterator.c:411,17'
          Dst:             njs_array_destroy
        - Src:             'src/njs_iterator.c:416,9'
          Dst:             njs_array_destroy
        - Src:             'src/njs_iterator.c:422,15'
          Dst:             njs_iterator_object_handler
    - functionName:    njs_iterator_object_handler
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          287
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - njs_atom_atomize_key
        - njs_value_property
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_iterator.c:613,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_iterator.c:613,15'
          Dst:             njs_value_property
        - Src:             'src/njs_iterator.c:620,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
    - functionName:    njs_object_iterate_reverse
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         112
      ICount:          833
      EdgeCount:       154
      CyclomaticComplexity: 44
      functionsReached:
        - njs_array_destroy
        - njs_array_indices
        - njs_atom_atomize_key
        - njs_iterator_object_handler
        - njs_string_new
        - njs_string_prop
        - njs_string_to_index
        - njs_string_utf8_offset
        - njs_value_property
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_iterator.c:465,23'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_iterator.c:495,18'
          Dst:             njs_string_prop
        - Src:             'src/njs_iterator.c:506,23'
          Dst:             njs_string_new
        - Src:             'src/njs_iterator.c:530,21'
          Dst:             njs_string_utf8_offset
        - Src:             'src/njs_iterator.c:537,23'
          Dst:             njs_string_new
        - Src:             'src/njs_iterator.c:565,16'
          Dst:             njs_array_indices
        - Src:             'src/njs_iterator.c:573,19'
          Dst:             njs_string_to_index
        - Src:             'src/njs_iterator.c:579,19'
          Dst:             njs_iterator_object_handler
        - Src:             'src/njs_iterator.c:582,17'
          Dst:             njs_array_destroy
        - Src:             'src/njs_iterator.c:587,9'
          Dst:             njs_array_destroy
        - Src:             'src/njs_iterator.c:595,15'
          Dst:             njs_iterator_object_handler
    - functionName:    njs_array_iterator_create
      functionSourceFile: '/src/njs/src/njs_iterator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          113
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
        - njs_object_value_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_iterator.c:37,16'
          Dst:             njs_object_value_alloc
        - Src:             'src/njs_iterator.c:39,9'
          Dst:             njs_memory_error
        - Src:             'src/njs_iterator.c:43,10'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_iterator.c:45,9'
          Dst:             njs_memory_error
    - functionName:    njs_await_rejected
      functionSourceFile: '/src/njs/src/njs_async.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_await_fulfilled
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_async.c:132,12'
          Dst:             njs_await_fulfilled
    - functionName:    njs_await_fulfilled
      functionSourceFile: '/src/njs/src/njs_async.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          375
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - njs_async_context_free
        - njs_function_call2
        - njs_vm_exception
        - njs_vm_throw
        - njs_vmcode_interpreter
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_async.c:86,9'
          Dst:             njs_vm_throw
        - Src:             'src/njs_async.c:92,11'
          Dst:             njs_vmcode_interpreter
        - Src:             'src/njs_async.c:101,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_async.c:104,9'
          Dst:             njs_async_context_free
        - Src:             'src/njs_async.c:114,18'
          Dst:             njs_vm_exception
        - Src:             'src/njs_async.c:116,16'
          Dst:             njs_function_call2
        - Src:             'src/njs_async.c:119,9'
          Dst:             njs_async_context_free
    - functionName:    njs_async_context_free
      functionSourceFile: '/src/njs/src/njs_async.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_async.c:139,5'
          Dst:             njs_mp_free
        - Src:             'src/njs_async.c:140,5'
          Dst:             njs_mp_free
    - functionName:    njs_async_function_frame_invoke
      functionSourceFile: '/src/njs/src/njs_async.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          240
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_function_call2
        - njs_function_lambda_call
        - njs_promise_new_capability
        - njs_vm_exception
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_async.c:23,18'
          Dst:             njs_promise_new_capability
        - Src:             'src/njs_async.c:28,11'
          Dst:             njs_function_lambda_call
        - Src:             'src/njs_async.c:31,15'
          Dst:             njs_function_call2
        - Src:             'src/njs_async.c:42,19'
          Dst:             njs_vm_exception
        - Src:             'src/njs_async.c:44,15'
          Dst:             njs_function_call2
    - functionName:    njs_ext_process_kill
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1126
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          416
      EdgeCount:       73
      CyclomaticComplexity: 19
      functionsReached:
        - __errno_location
        - kill
        - memcmp
        - njs_dtoa2
        - njs_string_new
        - njs_value_is_number
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_number
        - njs_vm_error2
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:1079,10'
          Dst:             njs_value_is_number
        - Src:             'src/njs_builtin.c:1080,9'
          Dst:             njs_vm_error2
        - Src:             'src/njs_builtin.c:1084,11'
          Dst:             njs_value_number
        - Src:             'src/njs_builtin.c:1088,9'
          Dst:             njs_value_is_number
        - Src:             'src/njs_builtin.c:1089,18'
          Dst:             njs_value_number
        - Src:             'src/njs_builtin.c:1091,16'
          Dst:             njs_value_is_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_builtin.c:1092,9'
          Dst:             njs_string_new
        - Src:             'src/njs_builtin.c:1094,31'
          Dst:             memcmp
        - Src:             'src/njs_builtin.c:1095,13'
          Dst:             njs_vm_error2
        - Src:             'src/njs_builtin.c:1103,17'
          Dst:             memcmp
        - Src:             'src/njs_builtin.c:1110,13'
          Dst:             njs_vm_error2
        - Src:             'src/njs_builtin.c:1114,17'
          Dst:             njs_value_is_undefined
        - Src:             'src/njs_builtin.c:1115,9'
          Dst:             njs_vm_error2
        - Src:             'src/njs_builtin.c:1119,9'
          Dst:             kill
        - Src:             'src/njs_builtin.c:1120,9'
          Dst:             __errno_location
        - Src:             'src/njs_builtin.c:1120,9'
          Dst:             __errno_location
        - Src:             'src/njs_builtin.c:1120,9'
          Dst:             strerror
        - Src:             'src/njs_builtin.c:1120,9'
          Dst:             njs_vm_error2
    - functionName:    kill
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_process_object_ppid
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1061
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getppid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:1062,28'
          Dst:             getppid
    - functionName:    getppid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_process_object_pid
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1051
      functionLinenumberEnd: 1054
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getpid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:1052,28'
          Dst:             getpid
    - functionName:    getpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_process_object_env
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1045
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          132
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_object_alloc
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:1014,11'
          Dst:             njs_object_alloc
        - Src:             'src/njs_builtin.c:1026,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_builtin.c:1028,9'
          Dst:             njs_throw_error
    - functionName:    njs_process_object_argv
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 913
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          184
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_array_alloc
        - njs_flathsh_unique_insert
        - njs_string_create
        - njs_throw_error
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:875,12'
          Dst:             njs_array_alloc
        - Src:             'src/njs_builtin.c:884,33'
          Dst:             strlen
        - Src:             'src/njs_builtin.c:883,15'
          Dst:             njs_string_create
        - Src:             'src/njs_builtin.c:895,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_builtin.c:897,9'
          Dst:             njs_throw_error
    - functionName:    njs_ext_memory_stats
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          289
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - njs_mp_stat
        - njs_object_alloc
        - njs_value_property_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:394,12'
          Dst:             njs_object_alloc
        - Src:             'src/njs_builtin.c:401,5'
          Dst:             njs_mp_stat
        - Src:             'src/njs_builtin.c:405,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_builtin.c:412,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_builtin.c:419,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_builtin.c:427,11'
          Dst:             njs_value_property_set
    - functionName:    njs_ext_on
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          364
      EdgeCount:       62
      CyclomaticComplexity: 16
      functionsReached:
        - memcmp
        - njs_dtoa2
        - njs_string_new
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:350,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_builtin.c:354,5'
          Dst:             njs_string_new
        - Src:             'src/njs_builtin.c:360,13'
          Dst:             memcmp
        - Src:             'src/njs_builtin.c:368,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_builtin.c:375,9'
          Dst:             njs_throw_error
    - functionName:    njs_ext_dump
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          326
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - njs_string_create
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
        - njs_vm_value_dump
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:132,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_builtin.c:321,9'
          Dst:             njs_vm_value_dump
        - Src:             'src/njs_builtin.c:325,12'
          Dst:             njs_string_create
    - functionName:    njs_top_level_constructor
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          148
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:606,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_builtin.c:608,9'
          Dst:             njs_throw_error
    - functionName:    njs_top_level_object
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          178
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_object_value_copy
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:545,18'
          Dst:             njs_object_value_copy
        - Src:             'src/njs_builtin.c:558,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_builtin.c:560,9'
          Dst:             njs_throw_error
    - functionName:    njs_global_this_object
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          128
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_flathsh_unique_insert
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:508,11'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_builtin.c:510,9'
          Dst:             njs_throw_error
    - functionName:    njs_global_this_prop_handler
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          196
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_rbtree_find
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:460,15'
          Dst:             njs_rbtree_find
        - Src:             'src/njs_builtin.c:473,13'
          Dst:             njs_throw_error
    - functionName:    njs_env_hash_init
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          218
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - njs_atom_atomize_key
        - njs_flathsh_unique_insert
        - njs_string_create
        - njs_string_prop
        - njs_throw_error
        - njs_utf8_encode
        - njs_utf8_upper_case
        - strchr
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:940,15'
          Dst:             strchr
        - Src:             'src/njs_builtin.c:945,15'
          Dst:             njs_string_create
        - Src:             'src/njs_builtin.c:950,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_builtin.c:958,18'
          Dst:             njs_utf8_upper_case
        - Src:             'src/njs_builtin.c:959,19'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_builtin.c:965,15'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_builtin.c:972,15'
          Dst:             njs_flathsh_unique_insert
        - Src:             'src/njs_builtin.c:975,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_builtin.c:995,64'
          Dst:             strlen
        - Src:             'src/njs_builtin.c:995,15'
          Dst:             njs_string_create
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_builtin_objects_create
      functionSourceFile: '/src/njs/src/njs_builtin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         65
      ICount:          850
      EdgeCount:       90
      CyclomaticComplexity: 27
      functionsReached:
        - njs_atom_hash_init
        - njs_dtoa2
        - njs_env_hash_init
        - njs_mp_zalloc
        - njs_object_hash_create
        - njs_regexp_pattern_create
        - njs_string_new
        - njs_vm_ctor_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_builtin.c:141,14'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_builtin.c:150,29'
          Dst:             njs_atom_hash_init
        - Src:             'src/njs_builtin.c:155,15'
          Dst:             njs_regexp_pattern_create
        - Src:             'src/njs_builtin.c:163,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:169,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:175,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:181,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:187,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:193,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:199,11'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:210,15'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:222,11'
          Dst:             njs_env_hash_init
        - Src:             'src/njs_builtin.c:228,17'
          Dst:             njs_vm_ctor_push
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_builtin.c:246,13'
          Dst:             njs_string_new
        - Src:             'src/njs_builtin.c:249,15'
          Dst:             njs_object_hash_create
        - Src:             'src/njs_builtin.c:272,15'
          Dst:             njs_object_hash_create
    - functionName:    njs_regex_capture
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 700
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pcre2_get_ovector_pointer_8
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:705,9'
          Dst:             pcre2_get_ovector_pointer_8
    - functionName:    pcre2_get_ovector_pointer_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_match
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 656
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_regex_pcre2_error
        - njs_trace_handler
        - pcre2_match_8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:662,11'
          Dst:             pcre2_match_8
        - Src:             'external/njs_regex.c:669,9'
          Dst:             njs_regex_pcre2_error
        - Src:             'external/njs_regex.c:669,9'
          Dst:             njs_trace_handler
    - functionName:    pcre2_match_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_pcre2_error
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pcre2_get_error_message_8
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:725,5'
          Dst:             pcre2_get_error_message_8
    - functionName:    pcre2_get_error_message_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_match_data_free
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pcre2_match_data_free_8
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:643,5'
          Dst:             pcre2_match_data_free_8
    - functionName:    pcre2_match_data_free_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_match_data
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pcre2_match_data_create_8
        - pcre2_match_data_create_from_pattern_8
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:603,16'
          Dst:             pcre2_match_data_create_from_pattern_8
        - Src:             'external/njs_regex.c:606,12'
          Dst:             pcre2_match_data_create_8
    - functionName:    pcre2_match_data_create_from_pattern_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pcre2_match_data_create_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_named_captures
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          81
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:591,20'
          Dst:             strlen
    - functionName:    njs_regex_is_valid
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_compile
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          452
      EdgeCount:       82
      CyclomaticComplexity: 20
      functionsReached:
        - njs_regex_pcre2_error
        - njs_trace_handler
        - pcre2_compile_8
        - pcre2_pattern_info_8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:344,19'
          Dst:             pcre2_compile_8
        - Src:             'external/njs_regex.c:349,9'
          Dst:             njs_regex_pcre2_error
        - Src:             'external/njs_regex.c:349,9'
          Dst:             njs_trace_handler
        - Src:             'external/njs_regex.c:356,11'
          Dst:             pcre2_pattern_info_8
        - Src:             'external/njs_regex.c:360,9'
          Dst:             njs_regex_pcre2_error
        - Src:             'external/njs_regex.c:360,9'
          Dst:             njs_trace_handler
        - Src:             'external/njs_regex.c:367,11'
          Dst:             pcre2_pattern_info_8
        - Src:             'external/njs_regex.c:371,9'
          Dst:             njs_regex_pcre2_error
        - Src:             'external/njs_regex.c:371,9'
          Dst:             njs_trace_handler
        - Src:             'external/njs_regex.c:382,15'
          Dst:             pcre2_pattern_info_8
        - Src:             'external/njs_regex.c:386,13'
          Dst:             njs_regex_pcre2_error
        - Src:             'external/njs_regex.c:386,13'
          Dst:             njs_trace_handler
        - Src:             'external/njs_regex.c:394,19'
          Dst:             pcre2_pattern_info_8
        - Src:             'external/njs_regex.c:398,17'
          Dst:             njs_regex_pcre2_error
        - Src:             'external/njs_regex.c:398,17'
          Dst:             njs_trace_handler
        - Src:             'external/njs_regex.c:406,19'
          Dst:             pcre2_pattern_info_8
        - Src:             'external/njs_regex.c:410,17'
          Dst:             njs_regex_pcre2_error
        - Src:             'external/njs_regex.c:410,17'
          Dst:             njs_trace_handler
    - functionName:    pcre2_compile_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pcre2_pattern_info_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_escape
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         70
      ICount:          425
      EdgeCount:       89
      CyclomaticComplexity: 21
      functionsReached:
        - njs_mp_alloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_regex.c:116,9'
          Branch Sides:    []
        - Branch String:   'external/njs_regex.c:158,9'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_regex.c:149,19'
          Dst:             njs_mp_alloc
    - functionName:    njs_regex_compile_ctx_create
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pcre2_compile_context_create_8
        - pcre2_set_compile_extra_options_8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:65,10'
          Dst:             pcre2_compile_context_create_8
        - Src:             'external/njs_regex.c:77,9'
          Dst:             pcre2_set_compile_extra_options_8
    - functionName:    pcre2_compile_context_create_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pcre2_set_compile_extra_options_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_regex_generic_ctx_create
      functionSourceFile: '/src/njs/external/njs_regex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pcre2_general_context_create_8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_regex.c:39,12'
          Dst:             pcre2_general_context_create_8
    - functionName:    pcre2_general_context_create_8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_buffer_constant
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2755
      functionLinenumberEnd: 2758
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_value_number_set
        - njs_vm_prop_magic32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2756,34'
          Dst:             njs_vm_prop_magic32
        - Src:             'src/njs_buffer.c:2756,5'
          Dst:             njs_value_number_set
    - functionName:    njs_buffer_constants
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2746
      functionLinenumberEnd: 2748
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_props_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2747,12'
          Dst:             njs_object_props_init
    - functionName:    njs_buffer
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2737
      functionLinenumberEnd: 2739
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_object_props_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2738,12'
          Dst:             njs_object_props_init
    - functionName:    njs_buffer_is_encoding
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 980
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_buffer_encoding
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:985,37'
          Dst:             njs_buffer_encoding
    - functionName:    njs_buffer_encoding
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2412
      functionLinenumberEnd: 2441
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          279
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - memcmp
        - njs_dtoa2
        - njs_string_new
        - njs_throw_error
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2418,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:2425,5'
          Dst:             njs_string_new
        - Src:             'src/njs_buffer.c:2431,13'
          Dst:             memcmp
        - Src:             'src/njs_buffer.c:2437,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_is_buffer
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 957
      functionLinenumberEnd: 973
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_buffer_slot_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:963,13'
          Dst:             njs_buffer_slot_internal
    - functionName:    njs_buffer_slot_internal
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          88
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_buffer_from
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          251
      EdgeCount:       52
      CyclomaticComplexity: 13
      functionsReached:
        - njs_buffer_encoding
        - njs_buffer_from_array_buffer
        - njs_buffer_from_object
        - njs_buffer_from_string
        - njs_buffer_from_typed_array
        - njs_throw_error
        - njs_type_string
        - njs_value_of
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:295,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:297,16'
          Dst:             njs_buffer_from_typed_array
        - Src:             'src/njs_buffer.c:300,16'
          Dst:             njs_buffer_from_array_buffer
        - Src:             'src/njs_buffer.c:304,20'
          Dst:             njs_buffer_encoding
        - Src:             'src/njs_buffer.c:309,16'
          Dst:             njs_buffer_from_string
        - Src:             'src/njs_buffer.c:313,19'
          Dst:             njs_value_of
        - Src:             'src/njs_buffer.c:326,19'
          Dst:             njs_buffer_from_object
        - Src:             'src/njs_buffer.c:332,9'
          Dst:             njs_type_string
        - Src:             'src/njs_buffer.c:332,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_from_typed_array
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          388
      EdgeCount:       49
      CyclomaticComplexity: 6
      functionsReached:
        - njs_buffer_alloc
        - njs_throw_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
        - Branch String:   'src/njs_typed_array.h:80,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:489,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:495,14'
          Dst:             njs_buffer_alloc
    - functionName:    njs_buffer_from_array_buffer
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          424
      EdgeCount:       70
      CyclomaticComplexity: 21
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_typed_array_alloc
        - njs_value_to_integer
        - njs_value_to_primitive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:436,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:436,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:442,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_buffer.c:457,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:463,14'
          Dst:             njs_typed_array_alloc
    - functionName:    njs_buffer_from_string
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          246
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - njs_buffer_alloc
        - njs_buffer_decode_string
        - njs_dtoa2
        - njs_string_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:521,11'
          Dst:             njs_buffer_decode_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:526,5'
          Dst:             njs_string_new
        - Src:             'src/njs_buffer.c:528,14'
          Dst:             njs_buffer_alloc
    - functionName:    njs_buffer_from_object
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         107
      ICount:          874
      EdgeCount:       145
      CyclomaticComplexity: 40
      functionsReached:
        - memcmp
        - njs_atom_atomize_key
        - njs_buffer_alloc
        - njs_dtoa2
        - njs_string_new
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_property
        - njs_value_to_primitive
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:356,11'
          Dst:             njs_value_property
        - Src:             'src/njs_buffer.c:362,15'
          Dst:             njs_value_property
        - Src:             'src/njs_buffer.c:367,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:372,9'
          Dst:             njs_string_new
        - Src:             'src/njs_buffer.c:374,14'
          Dst:             memcmp
        - Src:             'src/njs_buffer.c:378,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:71,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_buffer.c:397,14'
          Dst:             njs_buffer_alloc
        - Src:             'src/njs_buffer.c:405,15'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_buffer.c:410,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_buffer.c:410,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_buffer.c:410,15'
          Dst:             njs_string_to_number
    - functionName:    njs_buffer_alloc
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_typed_array_alloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:201,13'
          Dst:             njs_typed_array_alloc
    - functionName:    njs_buffer_decode_string
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2447
      functionLinenumberEnd: 2469
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          89
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_string_prop
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2452,12'
          Dst:             njs_string_prop
    - functionName:    njs_buffer_concat
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         113
      ICount:          928
      EdgeCount:       153
      CyclomaticComplexity: 42
      functionsReached:
        - njs_atom_atomize_key
        - njs_buffer_alloc
        - njs_object_length
        - njs_throw_error
        - njs_value_property
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:816,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:821,11'
          Dst:             njs_object_length
        - Src:             'src/njs_buffer.c:832,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:839,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:844,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:854,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_buffer.c:860,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:867,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:872,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:883,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:889,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:894,14'
          Dst:             njs_buffer_alloc
        - Src:             'src/njs_buffer.c:916,19'
          Dst:             njs_value_property
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_atom_atomize_key
        - Src:             'src/njs_value.h:1032,12'
          Dst:             njs_value_property
        - Src:             'src/njs_buffer.c:924,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:931,17'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_compare
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_buffer_compare_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:793,12'
          Dst:             njs_buffer_compare_array
    - functionName:    njs_buffer_compare_array
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          252
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - memcmp
        - njs_buffer_array_range
        - njs_buffer_slot
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:742,14'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:747,14'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:752,11'
          Dst:             njs_buffer_array_range
        - Src:             'src/njs_buffer.c:758,11'
          Dst:             njs_buffer_array_range
        - Src:             'src/njs_buffer.c:769,11'
          Dst:             memcmp
    - functionName:    njs_buffer_slot
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_buffer_slot_internal
        - njs_throw_error
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:636,13'
          Dst:             njs_buffer_slot_internal
        - Src:             'src/njs_buffer.c:638,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_array_range
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          333
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:689,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:694,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:694,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:701,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:708,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:708,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:715,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_byte_length
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          273
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - njs_buffer_decode_string_length
        - njs_buffer_encoding
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:576,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:593,20'
          Dst:             njs_buffer_encoding
        - Src:             'src/njs_buffer.c:598,16'
          Dst:             njs_buffer_decode_string_length
        - Src:             'src/njs_buffer.c:605,9'
          Dst:             njs_type_string
        - Src:             'src/njs_buffer.c:605,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_decode_string_length
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_string_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:549,12'
          Dst:             njs_string_prop
    - functionName:    njs_buffer_alloc_safe
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          218
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - njs_buffer_alloc
        - njs_buffer_fill
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:252,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:258,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:262,13'
          Dst:             njs_buffer_alloc
        - Src:             'src/njs_buffer.c:270,15'
          Dst:             njs_buffer_fill
    - functionName:    njs_buffer_fill
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1811
      functionLinenumberEnd: 1867
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          390
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - njs_buffer_encoding
        - njs_buffer_fill_string
        - njs_buffer_fill_typed_array
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_typed_array_writable
        - njs_value_to_primitive
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:1840,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:1818,14'
          Dst:             njs_typed_array_writable
        - Src:             'src/njs_buffer.c:1824,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1829,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1842,20'
          Dst:             njs_buffer_encoding
        - Src:             'src/njs_buffer.c:1847,16'
          Dst:             njs_buffer_fill_string
        - Src:             'src/njs_buffer.c:1850,16'
          Dst:             njs_buffer_fill_typed_array
        - Src:             'src/njs_buffer.c:1853,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_buffer.c:1853,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_buffer.c:1853,15'
          Dst:             njs_string_to_number
        - Src:             'src/njs_buffer.c:1859,13'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_fill_string
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1874
      functionLinenumberEnd: 1898
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          265
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - njs_buffer_decode_string
        - njs_dtoa2
        - njs_string_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:1880,11'
          Dst:             njs_buffer_decode_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:1885,5'
          Dst:             njs_string_new
    - functionName:    njs_buffer_fill_typed_array
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1904
      functionLinenumberEnd: 1942
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          181
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - njs_throw_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:1915,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_write_string
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1686
      functionLinenumberEnd: 1738
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          440
      EdgeCount:       71
      CyclomaticComplexity: 18
      functionsReached:
        - njs_buffer_decode_string
        - njs_dtoa2
        - njs_string_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:1696,11'
          Dst:             njs_buffer_decode_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:1701,5'
          Dst:             njs_string_new
    - functionName:    njs_buffer_prototype_to_json
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2350
      functionLinenumberEnd: 2407
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          355
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - njs_array_alloc
        - njs_buffer_slot
        - njs_dtoa2
        - njs_object_alloc
        - njs_string_new
        - njs_throw_error
        - njs_value_property_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2360,10'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:2365,11'
          Dst:             njs_object_alloc
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:2371,5'
          Dst:             njs_string_new
        - Src:             'src/njs_buffer.c:2373,11'
          Dst:             njs_value_property_set
        - Src:             'src/njs_buffer.c:2378,11'
          Dst:             njs_array_alloc
        - Src:             'src/njs_buffer.c:2385,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:2399,11'
          Dst:             njs_value_property_set
    - functionName:    njs_buffer_prototype_swap
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2295
      functionLinenumberEnd: 2344
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          271
      EdgeCount:       33
      CyclomaticComplexity: 7
      functionsReached:
        - njs_buffer_slot
        - njs_throw_error
        - njs_typed_array_writable
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:2319,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:2300,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:2306,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:2311,14'
          Dst:             njs_typed_array_writable
    - functionName:    njs_buffer_prototype_slice
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2276
      functionLinenumberEnd: 2289
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_typed_array_prototype_slice
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2280,11'
          Dst:             njs_typed_array_prototype_slice
    - functionName:    njs_buffer_prototype_includes
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2259
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_buffer_prototype_index_of
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2262,11'
          Dst:             njs_buffer_prototype_index_of
    - functionName:    njs_buffer_prototype_index_of
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2100
      functionLinenumberEnd: 2253
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         120
      ICount:          854
      EdgeCount:       157
      CyclomaticComplexity: 39
      functionsReached:
        - memcmp
        - njs_buffer_decode_string
        - njs_buffer_encoding
        - njs_buffer_slot
        - njs_dtoa2
        - njs_string_new
        - njs_throw_error
        - njs_type_string
        - njs_value_to_integer
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:2170,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:2116,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:2142,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:2157,16'
          Dst:             njs_buffer_encoding
        - Src:             'src/njs_buffer.c:2164,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:2174,19'
          Dst:             njs_buffer_decode_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:2179,13'
          Dst:             njs_string_new
        - Src:             'src/njs_buffer.c:2188,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:2217,17'
          Dst:             memcmp
        - Src:             'src/njs_buffer.c:2243,9'
          Dst:             njs_type_string
        - Src:             'src/njs_buffer.c:2243,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_prototype_equals
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2080
      functionLinenumberEnd: 2094
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_buffer_compare_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2083,11'
          Dst:             njs_buffer_compare_array
    - functionName:    njs_buffer_prototype_copy
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2022
      functionLinenumberEnd: 2074
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          314
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - njs_buffer_array_range
        - njs_buffer_slot
        - njs_typed_array_writable
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2033,14'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:2038,14'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:2043,11'
          Dst:             njs_buffer_array_range
        - Src:             'src/njs_buffer.c:2050,11'
          Dst:             njs_buffer_array_range
        - Src:             'src/njs_buffer.c:2057,14'
          Dst:             njs_typed_array_writable
    - functionName:    njs_buffer_prototype_compare
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2011
      functionLinenumberEnd: 2015
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          101
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - njs_buffer_compare_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2012,12'
          Dst:             njs_buffer_compare_array
    - functionName:    njs_buffer_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1948
      functionLinenumberEnd: 2005
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          523
      EdgeCount:       91
      CyclomaticComplexity: 26
      functionsReached:
        - njs_buffer_encoding
        - njs_buffer_slot
        - njs_dtoa2
        - njs_string_new
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:1957,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:1968,16'
          Dst:             njs_buffer_encoding
        - Src:             'src/njs_buffer.c:1974,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1974,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1983,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1983,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1992,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_buffer.c:1997,9'
          Dst:             njs_string_new
    - functionName:    njs_buffer_prototype_fill
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1744
      functionLinenumberEnd: 1805
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          422
      EdgeCount:       89
      CyclomaticComplexity: 25
      functionsReached:
        - njs_buffer_fill
        - njs_buffer_slot
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:1756,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:1775,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1775,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1787,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1787,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1795,11'
          Dst:             njs_buffer_fill
    - functionName:    njs_buffer_prototype_write
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1608
      functionLinenumberEnd: 1679
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          431
      EdgeCount:       86
      CyclomaticComplexity: 25
      functionsReached:
        - njs_buffer_encoding
        - njs_buffer_slot
        - njs_buffer_write_string
        - njs_throw_error
        - njs_typed_array_writable
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:1618,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:1632,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1642,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1642,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1654,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1654,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1662,16'
          Dst:             njs_buffer_encoding
        - Src:             'src/njs_buffer.c:1667,14'
          Dst:             njs_typed_array_writable
        - Src:             'src/njs_buffer.c:1673,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1677,12'
          Dst:             njs_buffer_write_string
    - functionName:    njs_buffer_prototype_write_float
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1523
      functionLinenumberEnd: 1602
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          503
      EdgeCount:       76
      CyclomaticComplexity: 20
      functionsReached:
        - njs_buffer_slot
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_throw_error
        - njs_typed_array_writable
        - njs_value_to_integer
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:1577,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:1536,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:1541,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_buffer.c:1541,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_buffer.c:1541,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_buffer.c:1549,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1549,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1558,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1570,14'
          Dst:             njs_typed_array_writable
    - functionName:    njs_buffer_prototype_write_int
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1271
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         149
      ICount:          1061
      EdgeCount:       200
      CyclomaticComplexity: 53
      functionsReached:
        - njs_buffer_slot
        - njs_throw_error
        - njs_typed_array_writable
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:1339,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:1283,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:1288,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1296,15'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1296,15'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1307,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1313,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1319,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1332,14'
          Dst:             njs_typed_array_writable
        - Src:             'src/njs_buffer.c:1343,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1350,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1364,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1371,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1387,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1394,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1418,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1425,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1443,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1450,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1479,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1486,17'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_prototype_read_float
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1192
      functionLinenumberEnd: 1265
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          367
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - njs_buffer_slot
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:1239,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:1206,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:1211,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1211,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1219,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1233,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_prototype_read_int
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         84
      ICount:          786
      EdgeCount:       109
      CyclomaticComplexity: 27
      functionsReached:
        - njs_buffer_slot
        - njs_throw_error
        - njs_value_to_integer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_buffer.c:1054,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_buffer.c:1006,13'
          Dst:             njs_buffer_slot
        - Src:             'src/njs_buffer.c:1011,11'
          Dst:             njs_value_to_integer
        - Src:             'src/njs_buffer.c:1011,11'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1021,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1027,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1033,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:1048,9'
          Dst:             njs_throw_error
    - functionName:    njs_buffer_constructor
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:236,5'
          Dst:             njs_throw_error
    - functionName:    njs_value_buffer_get
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          109
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - njs_throw_error
        - njs_typed_array_writable
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:656,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_buffer.c:665,20'
          Dst:             njs_typed_array_writable
    - functionName:    njs_buffer_new
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_buffer_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:219,14'
          Dst:             njs_buffer_alloc
    - functionName:    njs_buffer_set
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          197
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_memory_error
        - njs_mp_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:148,13'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_buffer.c:151,9'
          Dst:             njs_memory_error
    - functionName:    njs_buffer_init
      functionSourceFile: '/src/njs/src/njs_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2764
      functionLinenumberEnd: 2787
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_vm_add_module
        - njs_vm_external_create
        - njs_vm_external_prototype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_buffer.c:2769,16'
          Dst:             njs_vm_external_prototype
        - Src:             'src/njs_buffer.c:2775,11'
          Dst:             njs_vm_external_create
        - Src:             'src/njs_buffer.c:2780,14'
          Dst:             njs_vm_add_module
    - functionName:    mp_add_ui
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_shr
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          62
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_get_bit
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    udiv1norm
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          85
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_shl
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          57
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    udiv1norm_init
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_div1norm
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          87
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - mp_shl
        - udiv1norm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:184,28'
          Dst:             mp_shl
        - Src:             'src/njs_dtoa.c:187,19'
          Dst:             udiv1norm
    - functionName:    pow_ui_inv
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - clz32
        - pow_ui
        - udiv1norm_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:270,17'
          Dst:             clz32
        - Src:             'src/njs_dtoa.c:276,13'
          Dst:             pow_ui
        - Src:             'src/njs_dtoa.c:277,17'
          Dst:             clz32
        - Src:             'src/njs_dtoa.c:279,17'
          Dst:             udiv1norm_init
    - functionName:    clz32
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pow_ui
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          170
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - clz32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:254,19'
          Dst:             clz32
    - functionName:    mpb_floor_log2
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clz32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:447,41'
          Dst:             clz32
    - functionName:    mp_mul1
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          59
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    limb_to_a
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - u32toa_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:560,9'
          Dst:             u32toa_len
    - functionName:    u32toa_len
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          46
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_renorm
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_div1
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          63
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uint64_as_float64
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    round_to_d
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 963
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - mpb_floor_log2
        - mpb_get_u64
        - mpb_shr_round
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:973,13'
          Dst:             mpb_floor_log2
        - Src:             'src/njs_dtoa.c:982,9'
          Dst:             mpb_shr_round
        - Src:             'src/njs_dtoa.c:983,13'
          Dst:             mpb_get_u64
    - functionName:    mpb_shr_round
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          439
      EdgeCount:       84
      CyclomaticComplexity: 19
      functionsReached:
        - min_int
        - mp_add_ui
        - mp_shl
        - mp_shr
        - mpb_get_bit
        - mpb_renorm
      functionUses:    5
      BranchProfiles:
        - Branch String:   'src/njs_dtoa.c:331,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_dtoa.c:316,30'
          Dst:             mp_shl
        - Src:             'src/njs_dtoa.c:318,13'
          Dst:             mpb_renorm
        - Src:             'src/njs_dtoa.c:338,20'
          Dst:             mpb_get_bit
        - Src:             'src/njs_dtoa.c:349,40'
          Dst:             min_int
        - Src:             'src/njs_dtoa.c:359,31'
          Dst:             mpb_get_bit
        - Src:             'src/njs_dtoa.c:379,17'
          Dst:             mp_shr
        - Src:             'src/njs_dtoa.c:380,17'
          Dst:             mpb_renorm
        - Src:             'src/njs_dtoa.c:384,21'
          Dst:             mp_add_ui
    - functionName:    mpb_get_u64
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          41
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    min_int
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_mul1_base
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1325
      functionLinenumberEnd: 1342
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          123
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - mp_mul1
        - mpb_renorm
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:1336,30'
          Dst:             mp_mul1
        - Src:             'src/njs_dtoa.c:1340,9'
          Dst:             mpb_renorm
    - functionName:    strstart
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    to_digit
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1312
      functionLinenumberEnd: 1321
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          81
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_atod2
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1347
      functionLinenumberEnd: 1619
      functionDepth:   0
      returnType:      double
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         261
      ICount:          1435
      EdgeCount:       355
      CyclomaticComplexity: 96
      functionsReached:
        - ctz32
        - dtoa_free
        - dtoa_malloc
        - mpb_mul1_base
        - mul_pow_round_to_d
        - pow_ui
        - round_to_d
        - strstart
        - to_digit
        - uint64_as_float64
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:1358,12'
          Dst:             dtoa_malloc
        - Src:             'src/njs_dtoa.c:1407,13'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1412,44'
          Dst:             strstart
        - Src:             'src/njs_dtoa.c:1425,19'
          Dst:             ctz32
        - Src:             'src/njs_dtoa.c:1440,42'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1460,42'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1469,41'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1471,13'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1481,17'
          Dst:             mpb_mul1_base
        - Src:             'src/njs_dtoa.c:1491,29'
          Dst:             pow_ui
        - Src:             'src/njs_dtoa.c:1491,9'
          Dst:             mpb_mul1_base
        - Src:             'src/njs_dtoa.c:1531,13'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1537,31'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1539,17'
          Dst:             to_digit
        - Src:             'src/njs_dtoa.c:1581,17'
          Dst:             round_to_d
        - Src:             'src/njs_dtoa.c:1589,17'
          Dst:             mul_pow_round_to_d
        - Src:             'src/njs_dtoa.c:1611,12'
          Dst:             uint64_as_float64
        - Src:             'src/njs_dtoa.c:1615,5'
          Dst:             dtoa_free
    - functionName:    dtoa_malloc
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1087
      functionLinenumberEnd: 1091
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ctz32
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mul_pow_round_to_d
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mul_pow
        - round_to_d
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:1003,16'
          Dst:             mul_pow
        - Src:             'src/njs_dtoa.c:1004,12'
          Dst:             round_to_d
    - functionName:    dtoa_free
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mul_pow
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 947
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          259
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - max_int
        - min_int
        - mp_div1norm
        - mp_mul1
        - mpb_floor_log2
        - mpb_renorm
        - mpb_shr_round
        - pow_ui
        - pow_ui_inv
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:898,21'
          Dst:             min_int
        - Src:             'src/njs_dtoa.c:900,25'
          Dst:             pow_ui
        - Src:             'src/njs_dtoa.c:903,21'
          Dst:             mp_mul1
        - Src:             'src/njs_dtoa.c:918,42'
          Dst:             mpb_floor_log2
        - Src:             'src/njs_dtoa.c:918,30'
          Dst:             max_int
        - Src:             'src/njs_dtoa.c:922,30'
          Dst:             max_int
        - Src:             'src/njs_dtoa.c:925,13'
          Dst:             mpb_shr_round
        - Src:             'src/njs_dtoa.c:933,21'
          Dst:             min_int
        - Src:             'src/njs_dtoa.c:935,25'
          Dst:             pow_ui_inv
        - Src:             'src/njs_dtoa.c:938,21'
          Dst:             mp_div1norm
        - Src:             'src/njs_dtoa.c:940,17'
          Dst:             mpb_renorm
    - functionName:    max_int
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_cmp
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    output_digits
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 880
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          182
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - clz32
        - limb_to_a
        - min_int
        - mp_div1
        - mpb_renorm
        - mpb_shr_round
        - u64toa_bin_len
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:848,27'
          Dst:             clz32
        - Src:             'src/njs_dtoa.c:855,17'
          Dst:             min_int
        - Src:             'src/njs_dtoa.c:857,13'
          Dst:             u64toa_bin_len
        - Src:             'src/njs_dtoa.c:860,13'
          Dst:             mpb_shr_round
        - Src:             'src/njs_dtoa.c:865,17'
          Dst:             min_int
        - Src:             'src/njs_dtoa.c:867,17'
          Dst:             mp_div1
        - Src:             'src/njs_dtoa.c:868,13'
          Dst:             mpb_renorm
        - Src:             'src/njs_dtoa.c:869,13'
          Dst:             limb_to_a
    - functionName:    u64toa_bin_len
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          74
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_set_u64
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          42
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mul_pow_round
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 959
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mpb_set_u64
        - mpb_shr_round
        - mul_pow
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:956,5'
          Dst:             mpb_set_u64
        - Src:             'src/njs_dtoa.c:957,16'
          Dst:             mul_pow
        - Src:             'src/njs_dtoa.c:958,5'
          Dst:             mpb_shr_round
    - functionName:    njs_dtoa2
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1102
      functionLinenumberEnd: 1308
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - double
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         118
      ICount:          817
      EdgeCount:       157
      CyclomaticComplexity: 41
      functionsReached:
        - clz64
        - ctz32
        - dtoa_free
        - dtoa_malloc
        - float64_as_uint64
        - max_int
        - min_int
        - mpb_cmp
        - mpb_get_u64
        - mpb_set_u64
        - mpb_shr_round
        - mul_log2_radix
        - mul_pow
        - mul_pow_round
        - mul_pow_round_to_d
        - njs_u32toa
        - njs_u64toa_radix
        - output_digits
        - pow_ui
      functionUses:    209
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:1109,12'
          Dst:             dtoa_malloc
        - Src:             'src/njs_dtoa.c:1110,16'
          Dst:             dtoa_malloc
        - Src:             'src/njs_dtoa.c:1113,19'
          Dst:             ctz32
        - Src:             'src/njs_dtoa.c:1115,9'
          Dst:             float64_as_uint64
        - Src:             'src/njs_dtoa.c:1148,13'
          Dst:             clz64
        - Src:             'src/njs_dtoa.c:1167,14'
          Dst:             njs_u64toa_radix
        - Src:             'src/njs_dtoa.c:1174,13'
          Dst:             mul_log2_radix
        - Src:             'src/njs_dtoa.c:1189,25'
          Dst:             pow_ui
        - Src:             'src/njs_dtoa.c:1194,17'
          Dst:             mul_pow_round
        - Src:             'src/njs_dtoa.c:1195,24'
          Dst:             mpb_get_u64
        - Src:             'src/njs_dtoa.c:1209,13'
          Dst:             mpb_set_u64
        - Src:             'src/njs_dtoa.c:1210,18'
          Dst:             mul_pow_round_to_d
        - Src:             'src/njs_dtoa.c:1228,9'
          Dst:             mpb_set_u64
        - Src:             'src/njs_dtoa.c:1240,9'
          Dst:             mul_pow_round
        - Src:             'src/njs_dtoa.c:1244,45'
          Dst:             max_int
        - Src:             'src/njs_dtoa.c:1245,29'
          Dst:             max_int
        - Src:             'src/njs_dtoa.c:1244,15'
          Dst:             output_digits
        - Src:             'src/njs_dtoa.c:1259,21'
          Dst:             mul_pow
        - Src:             'src/njs_dtoa.c:1260,9'
          Dst:             mpb_shr_round
        - Src:             'src/njs_dtoa.c:1264,13'
          Dst:             mul_pow_round
        - Src:             'src/njs_dtoa.c:1265,17'
          Dst:             mpb_cmp
        - Src:             'src/njs_dtoa.c:1277,14'
          Dst:             output_digits
        - Src:             'src/njs_dtoa.c:1293,14'
          Dst:             njs_u32toa
        - Src:             'src/njs_dtoa.c:1299,14'
          Dst:             output_digits
        - Src:             'src/njs_dtoa.c:1301,47'
          Dst:             min_int
        - Src:             'src/njs_dtoa.c:1301,14'
          Dst:             output_digits
        - Src:             'src/njs_dtoa.c:1306,5'
          Dst:             dtoa_free
        - Src:             'src/njs_dtoa.c:1307,5'
          Dst:             dtoa_free
    - functionName:    float64_as_uint64
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clz64
      functionSourceFile: '/src/njs/src/njs_cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_u64toa_radix
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          149
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - clz32
        - clz64
        - njs_u64toa
        - u64toa_bin_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:654,16'
          Dst:             njs_u64toa
        - Src:             'src/njs_dtoa.c:656,27'
          Dst:             clz32
        - Src:             'src/njs_dtoa.c:660,23'
          Dst:             clz64
        - Src:             'src/njs_dtoa.c:661,9'
          Dst:             u64toa_bin_len
    - functionName:    mul_log2_radix
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - clz32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:472,27'
          Dst:             clz32
    - functionName:    njs_u32toa
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          49
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_u64toa
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          115
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_u32toa
        - u32toa_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:611,16'
          Dst:             njs_u32toa
        - Src:             'src/njs_dtoa.c:628,13'
          Dst:             u32toa_len
        - Src:             'src/njs_dtoa.c:631,18'
          Dst:             njs_u32toa
        - Src:             'src/njs_dtoa.c:633,9'
          Dst:             u32toa_len
    - functionName:    njs_dtoa_max_len
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1073
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - double
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          146
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - float64_as_uint64
        - max_int
        - mul_log2_radix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:1040,17'
          Dst:             float64_as_uint64
        - Src:             'src/njs_dtoa.c:1048,31'
          Dst:             mul_log2_radix
        - Src:             'src/njs_dtoa.c:1055,13'
          Dst:             float64_as_uint64
        - Src:             'src/njs_dtoa.c:1067,25'
          Dst:             mul_log2_radix
        - Src:             'src/njs_dtoa.c:1073,12'
          Dst:             max_int
    - functionName:    njs_i64toa_radix
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_u64toa_radix
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:686,16'
          Dst:             njs_u64toa_radix
        - Src:             'src/njs_dtoa.c:689,16'
          Dst:             njs_u64toa_radix
    - functionName:    njs_i64toa
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_u64toa
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:642,16'
          Dst:             njs_u64toa
        - Src:             'src/njs_dtoa.c:645,16'
          Dst:             njs_u64toa
    - functionName:    njs_i32toa
      functionSourceFile: '/src/njs/src/njs_dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_u32toa
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_dtoa.c:600,16'
          Dst:             njs_u32toa
        - Src:             'src/njs_dtoa.c:603,16'
          Dst:             njs_u32toa
    - functionName:    njs_djb_hash_lowcase
      functionSourceFile: '/src/njs/src/njs_djb_hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_djb_hash
      functionSourceFile: '/src/njs/src/njs_djb_hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_utf8_is_valid
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_utf8_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_utf8.c:415,13'
          Dst:             njs_utf8_decode
    - functionName:    njs_utf8_decode
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         99
      ICount:          757
      EdgeCount:       132
      CyclomaticComplexity: 35
      functionsReached: []
      functionUses:    26
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_utf8_stream_length
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          207
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - njs_utf8_decode
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_utf8.c:368,25'
          Dst:             njs_utf8_decode
    - functionName:    njs_utf8_upper_case
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          95
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_utf8_decode
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_utf8.c:339,9'
          Dst:             njs_utf8_decode
    - functionName:    njs_utf8_lower_case
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          95
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_utf8_decode
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_utf8.c:308,9'
          Dst:             njs_utf8_decode
    - functionName:    njs_utf8_casecmp
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_utf8_lower_case
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_utf8.c:272,14'
          Dst:             njs_utf8_lower_case
        - Src:             'src/njs_utf8.c:274,14'
          Dst:             njs_utf8_lower_case
    - functionName:    njs_utf8_stream_encode
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          111
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - njs_utf8_decode
        - njs_utf8_encode
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_utf8.c:224,14'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_utf8.c:238,15'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_utf8.c:246,15'
          Dst:             njs_utf8_encode
    - functionName:    njs_utf8_encode
      functionSourceFile: '/src/njs/src/njs_utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          137
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_utf16_decode
      functionSourceFile: '/src/njs/src/njs_utf16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          162
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_utf16_encode
      functionSourceFile: '/src/njs/src/njs_utf16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          121
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_flathsh_each
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_flathsh_unique_delete
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 669
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          243
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - njs_shrink_elts
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_flathsh.c:648,21'
          Dst:             njs_shrink_elts
    - functionName:    njs_shrink_elts
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 537
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          289
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_flathsh_delete
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          264
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_shrink_elts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_flathsh.c:583,21'
          Dst:             njs_shrink_elts
    - functionName:    njs_flathsh_unique_insert
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          142
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - njs_flathsh_add_elt
        - njs_flathsh_new
      functionUses:    41
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_flathsh.c:438,13'
          Dst:             njs_flathsh_new
        - Src:             'src/njs_flathsh.c:466,11'
          Dst:             njs_flathsh_add_elt
    - functionName:    njs_flathsh_new
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_flathsh_alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_flathsh.c:145,12'
          Dst:             njs_flathsh_alloc
    - functionName:    njs_flathsh_add_elt
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          141
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_expand_elts
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_flathsh.c:202,13'
          Dst:             njs_expand_elts
    - functionName:    njs_expand_elts
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          399
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_flathsh_alloc
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          103
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_flathsh_insert
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          163
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - njs_flathsh_add_elt
        - njs_flathsh_new
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_flathsh.c:387,13'
          Dst:             njs_flathsh_new
        - Src:             'src/njs_flathsh.c:417,11'
          Dst:             njs_flathsh_add_elt
    - functionName:    njs_flathsh_unique_find
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_flathsh_find
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          122
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_flathsh_destroy
      functionSourceFile: '/src/njs/src/njs_flathsh.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_last_handler
      functionSourceFile: '/src/njs/src/njs_trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_vsprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_trace.c:18,9'
          Dst:             njs_vsprintf
    - functionName:    njs_trace_handler
      functionSourceFile: '/src/njs/src/njs_trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_memalign
      functionSourceFile: '/src/njs/src/njs_malloc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - posix_memalign
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_malloc.c:39,11'
          Dst:             posix_memalign
    - functionName:    posix_memalign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_zalloc
      functionSourceFile: '/src/njs/src/njs_malloc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_swap_bytes
      functionSourceFile: '/src/njs/src/njs_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          44
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_swap_u8
      functionSourceFile: '/src/njs/src/njs_utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_swap_u128x
      functionSourceFile: '/src/njs/src/njs_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          67
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_swap_u128
      functionSourceFile: '/src/njs/src/njs_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          46
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_swap_u64
      functionSourceFile: '/src/njs/src/njs_utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_swap_u32
      functionSourceFile: '/src/njs/src/njs_utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_swap_u16
      functionSourceFile: '/src/njs/src/njs_utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_errno_string
      functionSourceFile: '/src/njs/src/njs_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         80
      ICount:          398
      EdgeCount:       158
      CyclomaticComplexity: 80
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/njs_utils.c:284,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    njs_heapsort
      functionSourceFile: '/src/njs/src/njs_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          345
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_qsort
      functionSourceFile: '/src/njs/src/njs_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          514
      EdgeCount:       77
      CyclomaticComplexity: 19
      functionsReached:
        - njs_heapsort
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/njs_utils.c:74,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_utils.c:211,17'
          Dst:             njs_heapsort
    - functionName:    njs_chb_join_to
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          53
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_chb_join
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          127
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - njs_chb_join_to
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_chb.c:264,5'
          Dst:             njs_chb_join_to
    - functionName:    njs_chb_destroy
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_chb_drop
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          218
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - njs_chb_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_chb.c:188,9'
          Dst:             njs_chb_destroy
    - functionName:    njs_chb_drain
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          121
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_chb_sprintf
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_chb_vsprintf
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_chb.c:120,5'
          Dst:             njs_chb_vsprintf
    - functionName:    njs_chb_vsprintf
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_chb_reserve
        - njs_vsprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_chb.c:102,13'
          Dst:             njs_chb_reserve
        - Src:             'src/njs_chb.c:107,11'
          Dst:             njs_vsprintf
    - functionName:    njs_chb_reserve
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          203
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_chb_append0
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_chb_reserve
      functionUses:    240
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_chb.c:35,13'
          Dst:             njs_chb_reserve
    - functionName:    njs_chb_init
      functionSourceFile: '/src/njs/src/njs_chb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          39
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lexer_multi
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          137
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lexer_division
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 940
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          231
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lexer_number
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          371
      EdgeCount:       86
      CyclomaticComplexity: 24
      functionsReached:
        - njs_atod2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_lexer.c:872,21'
          Dst:             njs_atod2
    - functionName:    njs_lexer_string
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 835
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          178
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lexer_word
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          220
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - njs_atom_add
        - njs_atom_find
        - njs_string_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_lexer.c:754,13'
          Dst:             njs_atom_find
        - Src:             'src/njs_lexer.c:757,15'
          Dst:             njs_string_create
        - Src:             'src/njs_lexer.c:763,17'
          Dst:             njs_atom_add
    - functionName:    njs_lexer_make_token
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         82
      ICount:          543
      EdgeCount:       90
      CyclomaticComplexity: 10
      functionsReached:
        - njs_lexer_division
        - njs_lexer_multi
        - njs_lexer_number
        - njs_lexer_string
        - njs_lexer_word
        - njs_utf8_decode
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/njs_utf8.h:178,5'
          Branch Sides:    []
        - Branch String:   'src/njs_lexer.c:582,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_lexer.c:566,18'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_lexer.c:585,16'
          Dst:             njs_lexer_word
        - Src:             'src/njs_lexer.c:589,9'
          Dst:             njs_lexer_string
        - Src:             'src/njs_lexer.c:621,9'
          Dst:             njs_lexer_number
        - Src:             'src/njs_lexer.c:625,9'
          Dst:             njs_lexer_division
        - Src:             'src/njs_lexer.c:629,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:634,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:639,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:644,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:649,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:654,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:659,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:664,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:669,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:674,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:679,9'
          Dst:             njs_lexer_multi
        - Src:             'src/njs_lexer.c:684,9'
          Dst:             njs_lexer_multi
    - functionName:    njs_lexer_consume_token
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_free
      functionUses:    160
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_lexer.c:536,9'
          Dst:             njs_mp_free
    - functionName:    njs_lexer_peek_token
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          249
      EdgeCount:       55
      CyclomaticComplexity: 12
      functionsReached:
        - njs_lexer_in_stack_pop
        - njs_lexer_in_stack_push
        - njs_lexer_make_token
        - njs_mp_zalloc
      functionUses:    32
      BranchProfiles:
        - Branch String:   'src/njs_lexer.c:390,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_lexer.c:501,17'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_lexer.c:501,17'
          Dst:             njs_lexer_make_token
        - Src:             'src/njs_lexer.c:431,11'
          Dst:             njs_lexer_in_stack_push
        - Src:             'src/njs_lexer.c:431,11'
          Dst:             njs_lexer_in_stack_pop
    - functionName:    njs_lexer_in_stack_push
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          102
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_lexer.c:344,11'
          Dst:             njs_mp_alloc
        - Src:             'src/njs_lexer.c:352,5'
          Dst:             njs_mp_free
    - functionName:    njs_lexer_in_stack_pop
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lexer_token
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          272
      EdgeCount:       55
      CyclomaticComplexity: 12
      functionsReached:
        - njs_lexer_in_stack_pop
        - njs_lexer_in_stack_push
        - njs_lexer_make_token
        - njs_mp_zalloc
      functionUses:    40
      BranchProfiles:
        - Branch String:   'src/njs_lexer.c:390,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_lexer.c:462,17'
          Dst:             njs_mp_zalloc
        - Src:             'src/njs_lexer.c:462,17'
          Dst:             njs_lexer_make_token
        - Src:             'src/njs_lexer.c:431,11'
          Dst:             njs_lexer_in_stack_push
        - Src:             'src/njs_lexer.c:431,11'
          Dst:             njs_lexer_in_stack_pop
    - functionName:    njs_lexer_in_fail_set
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lexer_in_fail_get
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_lexer_in_stack_init
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_zalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_lexer.c:315,23'
          Dst:             njs_mp_zalloc
    - functionName:    njs_lexer_init
      functionSourceFile: '/src/njs/src/njs_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          63
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - njs_lexer_in_stack_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_lexer.c:307,12'
          Dst:             njs_lexer_in_stack_init
    - functionName:    njs_boolean_prototype_to_string
      functionSourceFile: '/src/njs/src/njs_boolean.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          303
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - njs_dtoa2
        - njs_string_new
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_boolean.c:100,13'
          Dst:             njs_type_string
        - Src:             'src/njs_boolean.c:100,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_boolean.c:107,9'
          Dst:             njs_string_new
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_boolean.c:110,9'
          Dst:             njs_string_new
    - functionName:    njs_boolean_prototype_value_of
      functionSourceFile: '/src/njs/src/njs_boolean.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - njs_throw_error
        - njs_type_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_boolean.c:74,13'
          Dst:             njs_type_string
        - Src:             'src/njs_boolean.c:74,13'
          Dst:             njs_throw_error
    - functionName:    njs_boolean_constructor
      functionSourceFile: '/src/njs/src/njs_boolean.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_object_value_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_boolean.c:26,18'
          Dst:             njs_object_value_alloc
    - functionName:    njs_object_math_random
      functionSourceFile: '/src/njs/src/njs_math.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_random
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_math.c:369,11'
          Dst:             njs_random
    - functionName:    njs_object_math_min_max
      functionSourceFile: '/src/njs/src/njs_math.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          324
      EdgeCount:       66
      CyclomaticComplexity: 18
      functionsReached:
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_math.c:344,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_math.c:344,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_math.c:344,15'
          Dst:             njs_string_to_number
    - functionName:    njs_object_math_hypot
      functionSourceFile: '/src/njs/src/njs_math.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          446
      EdgeCount:       75
      CyclomaticComplexity: 21
      functionsReached:
        - hypot
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_math.c:285,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_math.c:285,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_math.c:285,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_value_conversion.h:54,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_math.c:298,15'
          Dst:             hypot
    - functionName:    hypot
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_object_math_func
      functionSourceFile: '/src/njs/src/njs_math.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         130
      ICount:          946
      EdgeCount:       162
      CyclomaticComplexity: 34
      functionsReached:
        - acos
        - acosh
        - asin
        - asinh
        - atan
        - atan2
        - atanh
        - cbrt
        - cos
        - cosh
        - exp
        - expm1
        - log
        - log10
        - log1p
        - log2
        - njs_string_to_number
        - njs_symbol_conversion_failed
        - njs_value_to_primitive
        - pow
        - sin
        - sinh
        - sqrt
        - tan
        - tanh
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_math.c:65,5'
          Branch Sides:    []
        - Branch String:   'src/njs_math.c:245,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_math.c:60,11'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_math.c:60,11'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_math.c:60,11'
          Dst:             njs_string_to_number
        - Src:             'src/njs_math.c:78,15'
          Dst:             acos
        - Src:             'src/njs_math.c:82,15'
          Dst:             acosh
        - Src:             'src/njs_math.c:93,15'
          Dst:             asin
        - Src:             'src/njs_math.c:97,15'
          Dst:             asinh
        - Src:             'src/njs_math.c:101,15'
          Dst:             atan
        - Src:             'src/njs_math.c:105,15'
          Dst:             atanh
        - Src:             'src/njs_math.c:109,15'
          Dst:             cbrt
        - Src:             'src/njs_math.c:122,15'
          Dst:             cos
        - Src:             'src/njs_math.c:126,15'
          Dst:             cosh
        - Src:             'src/njs_math.c:130,15'
          Dst:             exp
        - Src:             'src/njs_math.c:134,15'
          Dst:             expm1
        - Src:             'src/njs_math.c:146,15'
          Dst:             log
        - Src:             'src/njs_math.c:150,15'
          Dst:             log10
        - Src:             'src/njs_math.c:154,15'
          Dst:             log1p
        - Src:             'src/njs_math.c:165,15'
          Dst:             log2
        - Src:             'src/njs_math.c:176,15'
          Dst:             sin
        - Src:             'src/njs_math.c:180,15'
          Dst:             sinh
        - Src:             'src/njs_math.c:184,15'
          Dst:             sqrt
        - Src:             'src/njs_math.c:228,15'
          Dst:             tan
        - Src:             'src/njs_math.c:232,15'
          Dst:             tanh
        - Src:             'src/njs_math.c:240,15'
          Dst:             njs_value_to_primitive
        - Src:             'src/njs_math.c:240,15'
          Dst:             njs_symbol_conversion_failed
        - Src:             'src/njs_math.c:240,15'
          Dst:             njs_string_to_number
        - Src:             'src/njs_math.c:247,19'
          Dst:             atan2
        - Src:             'src/njs_math.c:263,23'
          Dst:             pow
    - functionName:    acos
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acosh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asin
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asinh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atan
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atanh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cbrt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cos
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cosh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expm1
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log10
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log1p
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sin
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sinh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sqrt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tan
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tanh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atan2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_text_decoder_arg_options
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_throw_error
        - njs_value_property
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_encoding.c:399,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:403,11'
          Dst:             njs_value_property
        - Src:             'src/njs_encoding.c:410,11'
          Dst:             njs_value_property
    - functionName:    njs_text_decoder_arg_encoding
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          302
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - memcmp
        - njs_dtoa2
        - njs_string_new
        - njs_throw_error
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_encoding.c:361,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_encoding.c:367,5'
          Dst:             njs_string_new
        - Src:             'src/njs_encoding.c:370,13'
          Dst:             memcmp
        - Src:             'src/njs_encoding.c:376,5'
          Dst:             njs_throw_error
    - functionName:    njs_text_decoder_decode
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          504
      EdgeCount:       87
      CyclomaticComplexity: 21
      functionsReached:
        - njs_string_alloc
        - njs_throw_error
        - njs_utf8_stream_encode
        - njs_utf8_stream_length
        - njs_value_property
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_encoding.c:511,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:521,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:531,17'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:539,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:549,13'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:554,15'
          Dst:             njs_value_property
        - Src:             'src/njs_encoding.c:572,14'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_encoding.c:575,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:579,11'
          Dst:             njs_string_alloc
        - Src:             'src/njs_encoding.c:584,12'
          Dst:             njs_utf8_stream_encode
    - functionName:    njs_text_decoder_ignore_bom
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          102
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_text_decoder_fatal
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          102
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_text_decoder_encoding
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          210
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - njs_dtoa2
        - njs_string_new
        - njs_throw_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_encoding.c:434,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_encoding.c:436,9'
          Dst:             njs_string_new
        - Src:             'src/njs_encoding.c:440,9'
          Dst:             njs_throw_error
    - functionName:    njs_text_encoder_encode_utf8
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          105
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_typed_array_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_encoding.c:144,13'
          Dst:             njs_typed_array_alloc
    - functionName:    njs_text_encoder_encode_into
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          716
      EdgeCount:       111
      CyclomaticComplexity: 25
      functionsReached:
        - njs_dtoa2
        - njs_object_alloc
        - njs_object_prop_define
        - njs_string_new
        - njs_throw_error
        - njs_utf8_decode
        - njs_utf8_encode
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/njs_typed_array.h:25,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/njs_encoding.c:177,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:182,15'
          Dst:             njs_value_to_string
        - Src:             'src/njs_encoding.c:191,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_atom.h:41,16'
          Dst:             njs_dtoa2
        - Src:             'src/njs_encoding.c:196,5'
          Dst:             njs_string_new
        - Src:             'src/njs_encoding.c:203,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:216,14'
          Dst:             njs_utf8_decode
        - Src:             'src/njs_encoding.c:231,14'
          Dst:             njs_utf8_encode
        - Src:             'src/njs_encoding.c:234,14'
          Dst:             njs_object_alloc
        - Src:             'src/njs_encoding.c:241,11'
          Dst:             njs_object_prop_define
        - Src:             'src/njs_encoding.c:247,11'
          Dst:             njs_object_prop_define
    - functionName:    njs_text_encoder_encode
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          277
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_string_prop
        - njs_text_encoder_encode_utf8
        - njs_throw_error
        - njs_typed_array_alloc
        - njs_utf8_stream_encode
        - njs_utf8_stream_length
        - njs_value_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_encoding.c:86,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:97,19'
          Dst:             njs_value_to_string
        - Src:             'src/njs_encoding.c:103,16'
          Dst:             njs_string_prop
        - Src:             'src/njs_encoding.c:106,20'
          Dst:             njs_text_encoder_encode_utf8
        - Src:             'src/njs_encoding.c:115,12'
          Dst:             njs_utf8_stream_length
        - Src:             'src/njs_encoding.c:119,13'
          Dst:             njs_typed_array_alloc
        - Src:             'src/njs_encoding.c:127,12'
          Dst:             njs_utf8_stream_encode
    - functionName:    njs_text_decoder_constructor
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          154
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_object_value_alloc
        - njs_text_decoder_arg_encoding
        - njs_text_decoder_arg_options
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_encoding.c:312,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:316,15'
          Dst:             njs_object_value_alloc
        - Src:             'src/njs_encoding.c:325,11'
          Dst:             njs_text_decoder_arg_encoding
        - Src:             'src/njs_encoding.c:330,11'
          Dst:             njs_text_decoder_arg_options
    - functionName:    njs_text_encoder_constructor
      functionSourceFile: '/src/njs/src/njs_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          96
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_object_value_alloc
        - njs_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_encoding.c:54,9'
          Dst:             njs_throw_error
        - Src:             'src/njs_encoding.c:58,15'
          Dst:             njs_object_value_alloc
    - functionName:    njs_crypto_cleanup_hmac
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - HMAC_CTX_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:650,9'
          Dst:             HMAC_CTX_free
    - functionName:    HMAC_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_crypto_create_hmac
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          252
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - HMAC_CTX_free
        - HMAC_CTX_new
        - HMAC_Init_ex
        - njs_buffer_decode_string
        - njs_buffer_encoding
        - njs_crypto_algorithm
        - njs_mp_alloc
        - njs_mp_cleanup_add
        - njs_value_buffer_get
        - njs_value_is_buffer
        - njs_value_is_string
        - njs_value_string_get
        - njs_vm_error2
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:504,10'
          Dst:             njs_crypto_algorithm
        - Src:             'external/njs_crypto_module.c:511,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_crypto_module.c:512,15'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_crypto_module.c:517,15'
          Dst:             njs_buffer_decode_string
        - Src:             'external/njs_crypto_module.c:522,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_crypto_module.c:524,16'
          Dst:             njs_value_is_buffer
        - Src:             'external/njs_crypto_module.c:525,15'
          Dst:             njs_value_buffer_get
        - Src:             'external/njs_crypto_module.c:531,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:536,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_crypto_module.c:536,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_crypto_module.c:538,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:542,16'
          Dst:             HMAC_CTX_new
        - Src:             'external/njs_crypto_module.c:544,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:548,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_crypto_module.c:548,11'
          Dst:             njs_mp_cleanup_add
        - Src:             'external/njs_crypto_module.c:550,9'
          Dst:             HMAC_CTX_free
        - Src:             'external/njs_crypto_module.c:551,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:558,9'
          Dst:             HMAC_Init_ex
        - Src:             'external/njs_crypto_module.c:559,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:563,12'
          Dst:             njs_vm_external_create
    - functionName:    njs_crypto_algorithm
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          82
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_get_digestbyname
        - njs_value_is_string
        - njs_value_string_get
        - njs_vm_error2
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:574,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_crypto_module.c:575,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:579,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_crypto_module.c:581,9'
          Dst:             strlen
        - Src:             'external/njs_crypto_module.c:582,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:586,10'
          Dst:             EVP_get_digestbyname
        - Src:             'external/njs_crypto_module.c:588,9'
          Dst:             njs_vm_error2
    - functionName:    HMAC_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    HMAC_Init_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_get_digestbyname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_crypto_cleanup_digest
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 641
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_MD_CTX_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:638,9'
          Dst:             EVP_MD_CTX_free
    - functionName:    EVP_MD_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_buffer_digest
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_buffer_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:628,12'
          Dst:             njs_buffer_new
    - functionName:    njs_crypto_encoding
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          108
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_vm_error2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:602,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_crypto_module.c:603,14'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_crypto_module.c:604,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:611,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_crypto_module.c:614,13'
          Dst:             memcmp
        - Src:             'external/njs_crypto_module.c:619,5'
          Dst:             njs_vm_error2
    - functionName:    njs_crypto_create_hash
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          148
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - EVP_DigestInit_ex
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - njs_crypto_algorithm
        - njs_mp_alloc
        - njs_mp_cleanup_add
        - njs_vm_error2
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:237,10'
          Dst:             njs_crypto_algorithm
        - Src:             'external/njs_crypto_module.c:242,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_crypto_module.c:242,12'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_crypto_module.c:244,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:248,17'
          Dst:             EVP_MD_CTX_new
        - Src:             'external/njs_crypto_module.c:250,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:254,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_crypto_module.c:254,11'
          Dst:             njs_mp_cleanup_add
        - Src:             'external/njs_crypto_module.c:256,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'external/njs_crypto_module.c:257,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:264,9'
          Dst:             EVP_DigestInit_ex
        - Src:             'external/njs_crypto_module.c:265,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:269,12'
          Dst:             njs_vm_external_create
    - functionName:    EVP_MD_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_hash_prototype_copy
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          156
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - EVP_MD_CTX_copy_ex
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - njs_mp_alloc
        - njs_mp_cleanup_add
        - njs_vm_error2
        - njs_vm_external
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:448,12'
          Dst:             njs_vm_external
        - Src:             'external/njs_crypto_module.c:450,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:455,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:459,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_crypto_module.c:459,12'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_crypto_module.c:461,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:465,17'
          Dst:             EVP_MD_CTX_new
        - Src:             'external/njs_crypto_module.c:467,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:471,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_crypto_module.c:471,11'
          Dst:             njs_mp_cleanup_add
        - Src:             'external/njs_crypto_module.c:473,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'external/njs_crypto_module.c:474,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_crypto_module.c:481,9'
          Dst:             EVP_MD_CTX_copy_ex
        - Src:             'external/njs_crypto_module.c:482,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:486,12'
          Dst:             njs_vm_external_create
    - functionName:    EVP_MD_CTX_copy_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_hash_prototype_digest
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          218
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - EVP_DigestFinal_ex
        - EVP_MD_CTX_free
        - HMAC_CTX_free
        - HMAC_Final
        - njs_crypto_encoding
        - njs_vm_error2
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:378,16'
          Dst:             njs_vm_external
        - Src:             'external/njs_crypto_module.c:380,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:391,15'
          Dst:             njs_vm_external
        - Src:             'external/njs_crypto_module.c:393,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:404,11'
          Dst:             njs_crypto_encoding
        - Src:             'external/njs_crypto_module.c:410,13'
          Dst:             EVP_DigestFinal_ex
        - Src:             'external/njs_crypto_module.c:411,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:415,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'external/njs_crypto_module.c:419,13'
          Dst:             HMAC_Final
        - Src:             'external/njs_crypto_module.c:420,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:424,9'
          Dst:             HMAC_CTX_free
        - Src:             'external/njs_crypto_module.c:435,5'
          Dst:             njs_vm_error2
    - functionName:    EVP_DigestFinal_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    HMAC_Final
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_hash_prototype_update
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          280
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - EVP_DigestUpdate
        - HMAC_Update
        - njs_buffer_decode_string
        - njs_buffer_encoding
        - njs_value_buffer_get
        - njs_value_is_buffer
        - njs_value_is_string
        - njs_value_string_get
        - njs_vm_error2
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:289,16'
          Dst:             njs_vm_external
        - Src:             'external/njs_crypto_module.c:291,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:296,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:303,15'
          Dst:             njs_vm_external
        - Src:             'external/njs_crypto_module.c:305,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:310,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:319,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_crypto_module.c:320,15'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_crypto_module.c:325,15'
          Dst:             njs_buffer_decode_string
        - Src:             'external/njs_crypto_module.c:330,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_crypto_module.c:332,16'
          Dst:             njs_value_is_buffer
        - Src:             'external/njs_crypto_module.c:333,15'
          Dst:             njs_value_buffer_get
        - Src:             'external/njs_crypto_module.c:339,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:345,13'
          Dst:             EVP_DigestUpdate
        - Src:             'external/njs_crypto_module.c:346,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_crypto_module.c:351,13'
          Dst:             HMAC_Update
        - Src:             'external/njs_crypto_module.c:352,13'
          Dst:             njs_vm_error2
    - functionName:    EVP_DigestUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    HMAC_Update
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_crypto_init
      functionSourceFile: '/src/njs/external/njs_crypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - njs_vm_add_module
        - njs_vm_external_create
        - njs_vm_external_prototype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_crypto_module.c:664,22'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_crypto_module.c:671,22'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_crypto_module.c:677,16'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_crypto_module.c:683,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_crypto_module.c:688,14'
          Dst:             njs_vm_add_module
    - functionName:    njs_ec_rs_size
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4436
      functionLinenumberEnd: 4457
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - EC_GROUP_order_bits
        - EC_KEY_get0_group
        - EVP_PKEY_get0_EC_KEY
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:4441,14'
          Dst:             EVP_PKEY_get0_EC_KEY
        - Src:             'external/njs_webcrypto_module.c:4446,16'
          Dst:             EC_KEY_get0_group
        - Src:             'external/njs_webcrypto_module.c:4451,12'
          Dst:             EC_GROUP_order_bits
    - functionName:    EVP_PKEY_get0_EC_KEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_get0_group
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_GROUP_order_bits
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_convert_p1363_to_der
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4531
      functionLinenumberEnd: 4610
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          216
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - BN_bin2bn
        - BN_new
        - ECDSA_SIG_free
        - ECDSA_SIG_new
        - ECDSA_SIG_set0
        - i2d_ECDSA_SIG
        - njs_ec_rs_size
        - njs_mp_alloc
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:4542,9'
          Dst:             njs_ec_rs_size
        - Src:             'external/njs_webcrypto_module.c:4548,14'
          Dst:             ECDSA_SIG_new
        - Src:             'external/njs_webcrypto_module.c:4553,9'
          Dst:             BN_new
        - Src:             'external/njs_webcrypto_module.c:4558,9'
          Dst:             BN_new
        - Src:             'external/njs_webcrypto_module.c:4563,14'
          Dst:             BN_bin2bn
        - Src:             'external/njs_webcrypto_module.c:4567,14'
          Dst:             BN_bin2bn
        - Src:             'external/njs_webcrypto_module.c:4571,9'
          Dst:             ECDSA_SIG_set0
        - Src:             'external/njs_webcrypto_module.c:4572,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4577,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:4577,12'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:4583,11'
          Dst:             i2d_ECDSA_SIG
        - Src:             'external/njs_webcrypto_module.c:4600,9'
          Dst:             ECDSA_SIG_free
        - Src:             'external/njs_webcrypto_module.c:4607,5'
          Dst:             njs_vm_memory_error
    - functionName:    ECDSA_SIG_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_bin2bn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ECDSA_SIG_set0
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_error
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6060
      functionLinenumberEnd: 6115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          179
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - ERR_error_string_n
        - ERR_get_error
        - ERR_peek_error
        - ERR_peek_error_line_data
        - njs_cpystrn
        - njs_vm_error2
        - njs_vsprintf
      functionUses:    121
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:6071,9'
          Dst:             njs_vsprintf
        - Src:             'external/njs_webcrypto_module.c:6074,9'
          Dst:             ERR_peek_error
        - Src:             'external/njs_webcrypto_module.c:6075,13'
          Dst:             njs_cpystrn
        - Src:             'external/njs_webcrypto_module.c:6079,17'
          Dst:             ERR_peek_error_line_data
        - Src:             'external/njs_webcrypto_module.c:6093,13'
          Dst:             ERR_error_string_n
        - Src:             'external/njs_webcrypto_module.c:6101,21'
          Dst:             njs_cpystrn
        - Src:             'external/njs_webcrypto_module.c:6106,20'
          Dst:             ERR_get_error
        - Src:             'external/njs_webcrypto_module.c:6114,5'
          Dst:             njs_vm_error2
    - functionName:    i2d_ECDSA_SIG
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ECDSA_SIG_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_peek_error
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_cpystrn
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6036
      functionLinenumberEnd: 6055
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_peek_error_line_data
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_error_string_n
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_get_error
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_convert_der_to_p1363
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4463
      functionLinenumberEnd: 4525
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          152
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - BN_bn2binpad
        - ECDSA_SIG_free
        - ECDSA_SIG_get0
        - d2i_ECDSA_SIG
        - njs_ec_rs_size
        - njs_mp_alloc
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:4473,9'
          Dst:             njs_ec_rs_size
        - Src:             'external/njs_webcrypto_module.c:4478,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:4478,12'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:4483,14'
          Dst:             d2i_ECDSA_SIG
        - Src:             'external/njs_webcrypto_module.c:4489,5'
          Dst:             ECDSA_SIG_get0
        - Src:             'external/njs_webcrypto_module.c:4495,9'
          Dst:             BN_bn2binpad
        - Src:             'external/njs_webcrypto_module.c:4499,9'
          Dst:             BN_bn2binpad
        - Src:             'external/njs_webcrypto_module.c:4515,9'
          Dst:             ECDSA_SIG_free
        - Src:             'external/njs_webcrypto_module.c:4522,5'
          Dst:             njs_vm_memory_error
    - functionName:    d2i_ECDSA_SIG
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ECDSA_SIG_get0
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_bn2binpad
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_set_rsa_padding
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4388
      functionLinenumberEnd: 4431
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          131
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - RSA_pkey_ctx_ctrl
        - njs_value_to_integer
        - njs_vm_error2
        - njs_vm_object_prop
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:4403,11'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'external/njs_webcrypto_module.c:4405,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4410,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:4412,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4417,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_webcrypto_module.c:4422,15'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'external/njs_webcrypto_module.c:4424,13'
          Dst:             njs_webcrypto_error
    - functionName:    RSA_pkey_ctx_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_import_base64url_bignum
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3201
      functionLinenumberEnd: 3223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - BN_bin2bn
        - njs_decode_base64url
        - njs_decode_base64url_length
        - njs_vm_error2
        - njs_vm_value_to_bytes
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:3206,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:3211,12'
          Dst:             njs_decode_base64url_length
        - Src:             'external/njs_webcrypto_module.c:3214,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3220,5'
          Dst:             njs_decode_base64url
        - Src:             'external/njs_webcrypto_module.c:3222,12'
          Dst:             BN_bin2bn
    - functionName:    njs_import_raw_ec
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3456
      functionLinenumberEnd: 3511
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          154
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - EC_KEY_free
        - EC_KEY_get0_group
        - EC_KEY_new_by_curve_name
        - EC_KEY_set_public_key
        - EC_POINT_free
        - EC_POINT_new
        - EC_POINT_oct2point
        - EVP_PKEY_free
        - EVP_PKEY_new
        - EVP_PKEY_set1_EC_KEY
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:3462,10'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'external/njs_webcrypto_module.c:3464,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3468,13'
          Dst:             EC_KEY_get0_group
        - Src:             'external/njs_webcrypto_module.c:3470,11'
          Dst:             EC_POINT_new
        - Src:             'external/njs_webcrypto_module.c:3472,9'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3473,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3477,10'
          Dst:             EC_POINT_oct2point
        - Src:             'external/njs_webcrypto_module.c:3478,9'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3479,9'
          Dst:             EC_POINT_free
        - Src:             'external/njs_webcrypto_module.c:3480,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3484,10'
          Dst:             EC_KEY_set_public_key
        - Src:             'external/njs_webcrypto_module.c:3485,9'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3486,9'
          Dst:             EC_POINT_free
        - Src:             'external/njs_webcrypto_module.c:3487,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3491,12'
          Dst:             EVP_PKEY_new
        - Src:             'external/njs_webcrypto_module.c:3493,9'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3494,9'
          Dst:             EC_POINT_free
        - Src:             'external/njs_webcrypto_module.c:3495,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3499,10'
          Dst:             EVP_PKEY_set1_EC_KEY
        - Src:             'external/njs_webcrypto_module.c:3500,9'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3501,9'
          Dst:             EC_POINT_free
        - Src:             'external/njs_webcrypto_module.c:3502,9'
          Dst:             EVP_PKEY_free
        - Src:             'external/njs_webcrypto_module.c:3503,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3507,5'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3508,5'
          Dst:             EC_POINT_free
    - functionName:    EC_KEY_new_by_curve_name
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_POINT_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_POINT_oct2point
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_POINT_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_set_public_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_set1_EC_KEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_import_jwk_okp
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3691
      functionLinenumberEnd: 3766
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          257
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - EVP_PKEY_new_raw_private_key
        - EVP_PKEY_new_raw_public_key
        - memcmp
        - njs_decode_base64url
        - njs_decode_base64url_length
        - njs_value_is_string
        - njs_value_string_get
        - njs_vm_error2
        - njs_vm_object_prop
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:3702,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3703,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3704,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3708,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:3710,9'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:3713,16'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:3717,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3721,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3722,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3723,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3727,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:3730,12'
          Dst:             njs_decode_base64url_length
        - Src:             'external/njs_webcrypto_module.c:3733,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3737,5'
          Dst:             njs_decode_base64url
        - Src:             'external/njs_webcrypto_module.c:3739,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3740,24'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3741,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:3744,16'
          Dst:             njs_decode_base64url_length
        - Src:             'external/njs_webcrypto_module.c:3747,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3751,9'
          Dst:             njs_decode_base64url
        - Src:             'external/njs_webcrypto_module.c:3753,16'
          Dst:             EVP_PKEY_new_raw_private_key
        - Src:             'external/njs_webcrypto_module.c:3757,16'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'external/njs_webcrypto_module.c:3761,9'
          Dst:             njs_webcrypto_error
    - functionName:    EVP_PKEY_new_raw_private_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_new_raw_public_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_import_jwk_oct
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3772
      functionLinenumberEnd: 3878
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          420
      EdgeCount:       84
      CyclomaticComplexity: 24
      functionsReached:
        - memcmp
        - njs_decode_base64url
        - njs_decode_base64url_length
        - njs_key_usage
        - njs_mp_alloc
        - njs_value_bool
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_vm_error2
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:3790,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3791,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3792,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3796,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:3798,12'
          Dst:             njs_decode_base64url_length
        - Src:             'external/njs_webcrypto_module.c:3800,39'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:3800,26'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:3803,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:3807,5'
          Dst:             njs_decode_base64url
        - Src:             'external/njs_webcrypto_module.c:3809,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3810,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3811,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3815,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:3821,17'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:3831,17'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:3839,5'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3847,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3853,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3854,25'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3855,15'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:3861,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3867,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3869,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3870,17'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:3872,13'
          Dst:             njs_vm_error2
    - functionName:    njs_key_usage
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5706
      functionLinenumberEnd: 5731
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_key_usage_array_handler
        - njs_value_is_array
        - njs_vm_array_length
        - njs_vm_error2
        - njs_vm_object_iterate
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5712,10'
          Dst:             njs_value_is_array
        - Src:             'external/njs_webcrypto_module.c:5713,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5717,11'
          Dst:             njs_vm_array_length
        - Src:             'external/njs_webcrypto_module.c:5729,12'
          Dst:             njs_vm_object_iterate
        - Src:             'external/njs_webcrypto_module.c:5729,12'
          Dst:             njs_key_usage_array_handler
    - functionName:    njs_key_usage_array_handler
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5674
      functionLinenumberEnd: 5701
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_error2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5683,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_webcrypto_module.c:5688,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:5691,13'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:5698,5'
          Dst:             njs_vm_error2
    - functionName:    njs_import_jwk_ec
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3516
      functionLinenumberEnd: 3685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         91
      ICount:          544
      EdgeCount:       125
      CyclomaticComplexity: 36
      functionsReached:
        - BN_free
        - EC_KEY_free
        - EC_KEY_new_by_curve_name
        - EC_KEY_set_private_key
        - EC_KEY_set_public_key_affine_coordinates
        - EVP_PKEY_free
        - EVP_PKEY_new
        - EVP_PKEY_set1_EC_KEY
        - memcmp
        - njs_import_base64url_bignum
        - njs_key_usage
        - njs_value_bool
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:3533,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3538,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3543,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3545,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:3548,10'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3549,13'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3550,14'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3551,17'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3554,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3558,23'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3560,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3561,25'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3562,15'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:3568,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3574,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3576,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3577,17'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:3579,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3586,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3587,25'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3588,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:3591,17'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:3599,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3603,10'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'external/njs_webcrypto_module.c:3605,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3609,12'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3614,12'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3620,16'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3626,10'
          Dst:             EC_KEY_set_public_key_affine_coordinates
        - Src:             'external/njs_webcrypto_module.c:3627,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3632,5'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3635,5'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3638,12'
          Dst:             EVP_PKEY_new
        - Src:             'external/njs_webcrypto_module.c:3643,10'
          Dst:             EVP_PKEY_set1_EC_KEY
        - Src:             'external/njs_webcrypto_module.c:3644,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3649,14'
          Dst:             EC_KEY_set_private_key
        - Src:             'external/njs_webcrypto_module.c:3650,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3654,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3658,5'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3664,5'
          Dst:             EVP_PKEY_free
        - Src:             'external/njs_webcrypto_module.c:3665,5'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3670,5'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:3673,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3677,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3681,9'
          Dst:             BN_free
    - functionName:    EC_KEY_set_public_key_affine_coordinates
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    26
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_set_private_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_import_jwk_rsa
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3228
      functionLinenumberEnd: 3451
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         116
      ICount:          772
      EdgeCount:       164
      CyclomaticComplexity: 50
      functionsReached:
        - BN_free
        - EVP_PKEY_free
        - EVP_PKEY_new
        - EVP_PKEY_set1_RSA
        - RSA_free
        - RSA_new
        - RSA_set0_crt_params
        - RSA_set0_factors
        - RSA_set0_key
        - memcmp
        - njs_import_base64url_bignum
        - njs_key_usage
        - njs_value_bool
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_to_string
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:3240,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3245,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3250,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3252,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:3255,10'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3256,13'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3257,14'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3258,17'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3261,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3265,23'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3267,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3268,25'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3269,15'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:3275,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3280,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3281,25'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3282,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_webcrypto_module.c:3287,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:3290,17'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:3298,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3300,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:3301,17'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:3303,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3308,11'
          Dst:             RSA_new
        - Src:             'external/njs_webcrypto_module.c:3310,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3314,12'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3319,12'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3324,10'
          Dst:             RSA_set0_key
        - Src:             'external/njs_webcrypto_module.c:3325,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3326,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3328,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3336,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3341,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3346,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3351,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3356,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3361,10'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3362,13'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3363,13'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3364,13'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3365,13'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3366,13'
          Dst:             njs_value_is_string
        - Src:             'external/njs_webcrypto_module.c:3369,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3373,12'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3378,10'
          Dst:             RSA_set0_key
        - Src:             'external/njs_webcrypto_module.c:3379,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3381,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3385,12'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3390,12'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3392,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3396,10'
          Dst:             RSA_set0_factors
        - Src:             'external/njs_webcrypto_module.c:3397,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3398,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3400,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3404,13'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3409,13'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3411,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3415,13'
          Dst:             njs_import_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:3417,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3418,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3422,10'
          Dst:             RSA_set0_crt_params
        - Src:             'external/njs_webcrypto_module.c:3423,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3424,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3425,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:3426,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3432,12'
          Dst:             EVP_PKEY_new
        - Src:             'external/njs_webcrypto_module.c:3437,10'
          Dst:             EVP_PKEY_set1_RSA
        - Src:             'external/njs_webcrypto_module.c:3438,9'
          Dst:             EVP_PKEY_free
        - Src:             'external/njs_webcrypto_module.c:3442,5'
          Dst:             RSA_free
        - Src:             'external/njs_webcrypto_module.c:3448,5'
          Dst:             RSA_free
    - functionName:    RSA_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_set0_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_set0_factors
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_set0_crt_params
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_set1_RSA
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_import_key_internal
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3885
      functionLinenumberEnd: 4335
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         192
      ICount:          1284
      EdgeCount:       253
      CyclomaticComplexity: 63
      functionsReached:
        - BIO_free
        - BIO_new_mem_buf
        - EC_GROUP_get_curve_name
        - EC_KEY_free
        - EC_KEY_get0_group
        - EVP_PKCS82PKEY
        - EVP_PKEY_free
        - EVP_PKEY_get1_EC_KEY
        - EVP_PKEY_get1_RSA
        - EVP_PKEY_id
        - EVP_PKEY_new_raw_public_key
        - PKCS8_PRIV_KEY_INFO_free
        - RSA_free
        - d2i_PKCS8_PRIV_KEY_INFO_bio
        - d2i_PUBKEY
        - memcmp
        - njs_algorithm_curve
        - njs_algorithm_hash
        - njs_algorithm_string
        - njs_format_string
        - njs_import_jwk_ec
        - njs_import_jwk_oct
        - njs_import_jwk_okp
        - njs_import_jwk_rsa
        - njs_import_raw_ec
        - njs_value_is_object
        - njs_vm_error2
        - njs_vm_external_create
        - njs_vm_object_prop
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
        - njs_webcrypto_key_alloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:3948,5'
          Branch Sides:    []
        - Branch String:   'external/njs_webcrypto_module.c:4084,5'
          Branch Sides:    []
        - Branch String:   'external/njs_webcrypto_module.c:4297,13'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:3913,9'
          Dst:             njs_format_string
        - Src:             'external/njs_webcrypto_module.c:3913,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:3913,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3920,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:3920,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3926,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:3932,11'
          Dst:             njs_webcrypto_key_alloc
        - Src:             'external/njs_webcrypto_module.c:3950,15'
          Dst:             BIO_new_mem_buf
        - Src:             'external/njs_webcrypto_module.c:3952,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3956,17'
          Dst:             d2i_PKCS8_PRIV_KEY_INFO_bio
        - Src:             'external/njs_webcrypto_module.c:3958,13'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:3959,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3963,16'
          Dst:             EVP_PKCS82PKEY
        - Src:             'external/njs_webcrypto_module.c:3965,13'
          Dst:             PKCS8_PRIV_KEY_INFO_free
        - Src:             'external/njs_webcrypto_module.c:3966,13'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:3967,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3971,9'
          Dst:             PKCS8_PRIV_KEY_INFO_free
        - Src:             'external/njs_webcrypto_module.c:3972,9'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:3980,16'
          Dst:             d2i_PUBKEY
        - Src:             'external/njs_webcrypto_module.c:3982,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3990,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_webcrypto_module.c:3991,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3996,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:4001,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:4006,13'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:4011,17'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4011,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4017,20'
          Dst:             njs_import_jwk_rsa
        - Src:             'external/njs_webcrypto_module.c:4022,20'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:4026,17'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4026,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4032,19'
          Dst:             njs_algorithm_curve
        - Src:             'external/njs_webcrypto_module.c:4037,20'
          Dst:             njs_import_jwk_ec
        - Src:             'external/njs_webcrypto_module.c:4042,20'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:4044,17'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4044,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4050,19'
          Dst:             njs_import_jwk_oct
        - Src:             'external/njs_webcrypto_module.c:4056,20'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:4060,17'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4060,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4066,20'
          Dst:             njs_import_jwk_okp
        - Src:             'external/njs_webcrypto_module.c:4073,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4091,15'
          Dst:             EVP_PKEY_get1_RSA
        - Src:             'external/njs_webcrypto_module.c:4093,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4097,9'
          Dst:             RSA_free
        - Src:             'external/njs_webcrypto_module.c:4106,15'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:4112,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4127,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4127,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4139,15'
          Dst:             njs_algorithm_curve
        - Src:             'external/njs_webcrypto_module.c:4145,20'
          Dst:             njs_import_raw_ec
        - Src:             'external/njs_webcrypto_module.c:4153,14'
          Dst:             EVP_PKEY_get1_EC_KEY
        - Src:             'external/njs_webcrypto_module.c:4155,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4159,17'
          Dst:             EC_KEY_get0_group
        - Src:             'external/njs_webcrypto_module.c:4160,15'
          Dst:             EC_GROUP_get_curve_name
        - Src:             'external/njs_webcrypto_module.c:4161,9'
          Dst:             EC_KEY_free
        - Src:             'external/njs_webcrypto_module.c:4180,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4197,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4197,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4209,20'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'external/njs_webcrypto_module.c:4212,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4217,13'
          Dst:             EVP_PKEY_id
        - Src:             'external/njs_webcrypto_module.c:4218,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4225,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4225,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4236,20'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'external/njs_webcrypto_module.c:4239,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4245,13'
          Dst:             EVP_PKEY_id
        - Src:             'external/njs_webcrypto_module.c:4246,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4257,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4257,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4269,19'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:4279,19'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:4285,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4304,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4320,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:4331,9'
          Dst:             EVP_PKEY_free
    - functionName:    njs_format_string
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5658
      functionLinenumberEnd: 5667
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_algorithm_string
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5809
      functionLinenumberEnd: 5820
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    31
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_key_alloc
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5602
      functionLinenumberEnd: 5626
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_mp_cleanup_add
        - njs_mp_zalloc
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5606,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:5606,11'
          Dst:             njs_mp_zalloc
        - Src:             'external/njs_webcrypto_module.c:5608,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:5612,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:5612,11'
          Dst:             njs_mp_cleanup_add
        - Src:             'external/njs_webcrypto_module.c:5614,9'
          Dst:             njs_vm_memory_error
    - functionName:    BIO_new_mem_buf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    d2i_PKCS8_PRIV_KEY_INFO_bio
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BIO_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKCS82PKEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    PKCS8_PRIV_KEY_INFO_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    d2i_PUBKEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_algorithm_curve
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5904
      functionLinenumberEnd: 5937
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          136
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
        - njs_value_string_get
        - njs_value_to_string
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5915,11'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:5917,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:5920,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_webcrypto_module.c:5925,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:5928,13'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:5934,5'
          Dst:             njs_vm_error2
    - functionName:    EVP_PKEY_get1_RSA
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_algorithm_hash
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5827
      functionLinenumberEnd: 5862
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          135
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
        - njs_value_is_object
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_error2
        - njs_vm_object_prop
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5834,9'
          Dst:             njs_value_is_object
        - Src:             'external/njs_webcrypto_module.c:5835,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:5845,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_webcrypto_module.c:5850,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:5853,13'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:5859,5'
          Dst:             njs_vm_error2
    - functionName:    EVP_PKEY_get1_EC_KEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_GROUP_get_curve_name
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_id
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_cleanup_pkey
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5587
      functionLinenumberEnd: 5596
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5592,13'
          Dst:             EVP_PKEY_free
    - functionName:    njs_webcrypto_generate_25519_keypair
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2785
      functionLinenumberEnd: 2863
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          226
      EdgeCount:       34
      CyclomaticComplexity: 12
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new_id
        - EVP_PKEY_keygen
        - EVP_PKEY_keygen_init
        - EVP_PKEY_up_ref
        - njs_vm_external_create
        - njs_vm_object_alloc
        - njs_vm_object_prop_set
        - njs_webcrypto_error
        - njs_webcrypto_key_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2794,11'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'external/njs_webcrypto_module.c:2796,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2800,9'
          Dst:             EVP_PKEY_keygen_init
        - Src:             'external/njs_webcrypto_module.c:2801,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:2802,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2806,9'
          Dst:             EVP_PKEY_keygen
        - Src:             'external/njs_webcrypto_module.c:2807,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:2808,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2812,5'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:2817,14'
          Dst:             njs_webcrypto_key_alloc
        - Src:             'external/njs_webcrypto_module.c:2822,9'
          Dst:             EVP_PKEY_up_ref
        - Src:             'external/njs_webcrypto_module.c:2823,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2830,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:2836,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:2843,11'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:2848,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2854,11'
          Dst:             njs_vm_object_prop_set
    - functionName:    EVP_PKEY_CTX_new_id
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_keygen_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_keygen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_up_ref
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_base64url_bignum_set
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2217
      functionLinenumberEnd: 2227
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_export_base64url_bignum
        - njs_vm_object_prop_set
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2221,11'
          Dst:             njs_export_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:2226,12'
          Dst:             njs_vm_object_prop_set
    - functionName:    njs_export_base64url_bignum
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2190
      functionLinenumberEnd: 2211
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          93
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - BN_bn2binpad
        - BN_num_bits
        - njs_string_base64url
        - njs_vm_error2
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2195,16'
          Dst:             BN_num_bits
        - Src:             'external/njs_webcrypto_module.c:2199,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2203,9'
          Dst:             BN_bn2binpad
        - Src:             'external/njs_webcrypto_module.c:2210,12'
          Dst:             njs_string_base64url
    - functionName:    BN_num_bits
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_export_jwk_ec
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2322
      functionLinenumberEnd: 2441
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          311
      EdgeCount:       56
      CyclomaticComplexity: 18
      functionsReached:
        - BN_free
        - BN_new
        - EC_GROUP_get_curve_name
        - EC_GROUP_get_degree
        - EC_KEY_get0_group
        - EC_KEY_get0_private_key
        - EC_KEY_get0_public_key
        - EC_POINT_get_affine_coordinates
        - EVP_PKEY_get0_EC_KEY
        - OBJ_nid2sn
        - njs_algorithm_curve_name
        - njs_export_base64url_bignum
        - njs_vm_error2
        - njs_vm_object_alloc
        - njs_vm_object_prop_set
        - njs_vm_value_string_create
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2337,10'
          Dst:             EVP_PKEY_get0_EC_KEY
        - Src:             'external/njs_webcrypto_module.c:2339,11'
          Dst:             EC_KEY_get0_public_key
        - Src:             'external/njs_webcrypto_module.c:2340,13'
          Dst:             EC_KEY_get0_group
        - Src:             'external/njs_webcrypto_module.c:2342,18'
          Dst:             EC_GROUP_get_degree
        - Src:             'external/njs_webcrypto_module.c:2345,12'
          Dst:             BN_new
        - Src:             'external/njs_webcrypto_module.c:2350,12'
          Dst:             BN_new
        - Src:             'external/njs_webcrypto_module.c:2355,10'
          Dst:             EC_POINT_get_affine_coordinates
        - Src:             'external/njs_webcrypto_module.c:2356,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2360,11'
          Dst:             njs_export_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:2365,5'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:2368,11'
          Dst:             njs_export_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:2373,5'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:2376,11'
          Dst:             EC_GROUP_get_curve_name
        - Src:             'external/njs_webcrypto_module.c:2378,13'
          Dst:             njs_algorithm_curve_name
        - Src:             'external/njs_webcrypto_module.c:2379,12'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2383,9'
          Dst:             OBJ_nid2sn
        - Src:             'external/njs_webcrypto_module.c:2383,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2387,11'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:2392,5'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2394,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2399,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2404,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2409,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2415,16'
          Dst:             EC_KEY_get0_private_key
        - Src:             'external/njs_webcrypto_module.c:2417,15'
          Dst:             njs_export_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:2422,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2433,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:2437,9'
          Dst:             BN_free
    - functionName:    EC_KEY_get0_public_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_GROUP_get_degree
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_POINT_get_affine_coordinates
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_algorithm_curve_name
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5942
      functionLinenumberEnd: 5952
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OBJ_nid2sn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_get0_private_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_export_jwk_rsa
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2232
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          288
      EdgeCount:       44
      CyclomaticComplexity: 15
      functionsReached:
        - EVP_PKEY_get0_RSA
        - RSA_get0_crt_params
        - RSA_get0_factors
        - RSA_get0_key
        - njs_base64url_bignum_set
        - njs_export_base64url_bignum
        - njs_vm_object_alloc
        - njs_vm_object_prop_set
        - njs_vm_value_string_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2240,11'
          Dst:             EVP_PKEY_get0_RSA
        - Src:             'external/njs_webcrypto_module.c:2242,5'
          Dst:             RSA_get0_key
        - Src:             'external/njs_webcrypto_module.c:2244,11'
          Dst:             njs_export_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:2249,11'
          Dst:             njs_export_base64url_bignum
        - Src:             'external/njs_webcrypto_module.c:2254,11'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:2259,5'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2261,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2266,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2271,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2277,9'
          Dst:             RSA_get0_factors
        - Src:             'external/njs_webcrypto_module.c:2278,9'
          Dst:             RSA_get0_crt_params
        - Src:             'external/njs_webcrypto_module.c:2280,15'
          Dst:             njs_base64url_bignum_set
        - Src:             'external/njs_webcrypto_module.c:2285,15'
          Dst:             njs_base64url_bignum_set
        - Src:             'external/njs_webcrypto_module.c:2290,15'
          Dst:             njs_base64url_bignum_set
        - Src:             'external/njs_webcrypto_module.c:2295,15'
          Dst:             njs_base64url_bignum_set
        - Src:             'external/njs_webcrypto_module.c:2300,15'
          Dst:             njs_base64url_bignum_set
        - Src:             'external/njs_webcrypto_module.c:2305,15'
          Dst:             njs_base64url_bignum_set
        - Src:             'external/njs_webcrypto_module.c:2313,12'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2316,12'
          Dst:             njs_vm_object_prop_set
    - functionName:    EVP_PKEY_get0_RSA
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_get0_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_get0_factors
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_get0_crt_params
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_export_raw_ec
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2446
      functionLinenumberEnd: 2486
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          129
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - EC_KEY_get0_group
        - EC_KEY_get0_public_key
        - EC_POINT_point2oct
        - EVP_PKEY_get0_EC_KEY
        - njs_algorithm_string
        - njs_mp_alloc
        - njs_vm_error2
        - njs_vm_memory_pool
        - njs_vm_value_array_buffer_set
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2457,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:2457,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2462,10'
          Dst:             EVP_PKEY_get0_EC_KEY
        - Src:             'external/njs_webcrypto_module.c:2464,13'
          Dst:             EC_KEY_get0_group
        - Src:             'external/njs_webcrypto_module.c:2465,13'
          Dst:             EC_KEY_get0_public_key
        - Src:             'external/njs_webcrypto_module.c:2468,12'
          Dst:             EC_POINT_point2oct
        - Src:             'external/njs_webcrypto_module.c:2470,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2474,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:2474,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:2479,12'
          Dst:             EC_POINT_point2oct
        - Src:             'external/njs_webcrypto_module.c:2481,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2485,12'
          Dst:             njs_vm_value_array_buffer_set
    - functionName:    EC_POINT_point2oct
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_array_buffer
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6019
      functionLinenumberEnd: 6031
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_value_array_buffer_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:6022,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:6022,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:6024,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:6030,12'
          Dst:             njs_vm_value_array_buffer_set
    - functionName:    njs_export_jwk_oct
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2541
      functionLinenumberEnd: 2620
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          255
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - njs_key_ops
        - njs_string_base64url
        - njs_value_boolean_set
        - njs_value_is_undefined
        - njs_value_undefined_set
        - njs_vm_object_alloc
        - njs_vm_object_prop_set
        - njs_vm_value_string_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:2562,9'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2549,11'
          Dst:             njs_string_base64url
        - Src:             'external/njs_webcrypto_module.c:2558,16'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2568,20'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2573,13'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:2578,11'
          Dst:             njs_key_ops
        - Src:             'external/njs_webcrypto_module.c:2583,5'
          Dst:             njs_value_boolean_set
        - Src:             'external/njs_webcrypto_module.c:2585,11'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:2590,5'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2592,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2597,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2602,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2607,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2612,10'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:2613,15'
          Dst:             njs_vm_object_prop_set
    - functionName:    njs_key_ops
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5736
      functionLinenumberEnd: 5762
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          112
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - njs_vm_array_alloc
        - njs_vm_array_push
        - njs_vm_value_string_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5741,11'
          Dst:             njs_vm_array_alloc
        - Src:             'external/njs_webcrypto_module.c:5748,21'
          Dst:             njs_vm_array_push
        - Src:             'external/njs_webcrypto_module.c:5753,19'
          Dst:             njs_vm_value_string_create
    - functionName:    njs_export_jwk_okp
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2627
      functionLinenumberEnd: 2729
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          302
      EdgeCount:       54
      CyclomaticComplexity: 18
      functionsReached:
        - EVP_PKEY_get_raw_private_key
        - EVP_PKEY_get_raw_public_key
        - njs_key_ops
        - njs_string_base64url
        - njs_value_boolean_set
        - njs_vm_object_alloc
        - njs_vm_object_prop_set
        - njs_vm_value_string_create
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2643,9'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'external/njs_webcrypto_module.c:2644,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2651,11'
          Dst:             njs_string_base64url
        - Src:             'external/njs_webcrypto_module.c:2658,13'
          Dst:             EVP_PKEY_get_raw_private_key
        - Src:             'external/njs_webcrypto_module.c:2659,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2666,15'
          Dst:             njs_string_base64url
        - Src:             'external/njs_webcrypto_module.c:2672,11'
          Dst:             njs_key_ops
        - Src:             'external/njs_webcrypto_module.c:2677,5'
          Dst:             njs_value_boolean_set
        - Src:             'external/njs_webcrypto_module.c:2679,11'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:2684,11'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2690,11'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:2696,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2701,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2706,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2712,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2718,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2723,11'
          Dst:             njs_vm_object_prop_set
    - functionName:    EVP_PKEY_get_raw_public_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_get_raw_private_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_export_jwk_asymmetric
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2492
      functionLinenumberEnd: 2536
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          137
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_PKEY_id
        - njs_export_jwk_ec
        - njs_export_jwk_rsa
        - njs_key_ops
        - njs_value_boolean_set
        - njs_vm_error2
        - njs_vm_object_prop_set
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:2498,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2498,13'
          Dst:             EVP_PKEY_id
        - Src:             'external/njs_webcrypto_module.c:2503,15'
          Dst:             njs_export_jwk_rsa
        - Src:             'external/njs_webcrypto_module.c:2511,15'
          Dst:             njs_export_jwk_ec
        - Src:             'external/njs_webcrypto_module.c:2519,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2523,11'
          Dst:             njs_key_ops
        - Src:             'external/njs_webcrypto_module.c:2528,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2533,5'
          Dst:             njs_value_boolean_set
        - Src:             'external/njs_webcrypto_module.c:2535,12'
          Dst:             njs_vm_object_prop_set
    - functionName:    njs_webcrypto_export_key_raw
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4929
      functionLinenumberEnd: 5064
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          389
      EdgeCount:       64
      CyclomaticComplexity: 12
      functionsReached:
        - BIO_ctrl
        - BIO_free
        - BIO_new
        - BIO_s_mem
        - EVP_PKEY2PKCS8
        - EVP_PKEY_get_raw_public_key
        - PKCS8_PRIV_KEY_INFO_free
        - i2d_PKCS8_PRIV_KEY_INFO_bio
        - i2d_PUBKEY_bio
        - njs_algorithm_string
        - njs_export_jwk_asymmetric
        - njs_export_jwk_oct
        - njs_export_jwk_okp
        - njs_export_raw_ec
        - njs_vm_error2
        - njs_vm_value_array_buffer_set
        - njs_webcrypto_array_buffer
        - njs_webcrypto_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:4935,5'
          Branch Sides:    []
        - Branch String:   'external/njs_webcrypto_module.c:4937,9'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:4943,20'
          Dst:             njs_export_jwk_asymmetric
        - Src:             'external/njs_webcrypto_module.c:4948,20'
          Dst:             njs_export_jwk_okp
        - Src:             'external/njs_webcrypto_module.c:4956,20'
          Dst:             njs_export_jwk_oct
        - Src:             'external/njs_webcrypto_module.c:4966,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4966,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4971,23'
          Dst:             BIO_s_mem
        - Src:             'external/njs_webcrypto_module.c:4971,15'
          Dst:             BIO_new
        - Src:             'external/njs_webcrypto_module.c:4973,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4979,17'
          Dst:             EVP_PKEY2PKCS8
        - Src:             'external/njs_webcrypto_module.c:4981,13'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:4982,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4986,14'
          Dst:             i2d_PKCS8_PRIV_KEY_INFO_bio
        - Src:             'external/njs_webcrypto_module.c:4987,13'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:4988,13'
          Dst:             PKCS8_PRIV_KEY_INFO_free
        - Src:             'external/njs_webcrypto_module.c:4989,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4994,9'
          Dst:             BIO_ctrl
        - Src:             'external/njs_webcrypto_module.c:4996,15'
          Dst:             njs_webcrypto_array_buffer
        - Src:             'external/njs_webcrypto_module.c:4998,9'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:4999,9'
          Dst:             PKCS8_PRIV_KEY_INFO_free
        - Src:             'external/njs_webcrypto_module.c:5005,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:5005,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5010,23'
          Dst:             BIO_s_mem
        - Src:             'external/njs_webcrypto_module.c:5010,15'
          Dst:             BIO_new
        - Src:             'external/njs_webcrypto_module.c:5012,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:5018,14'
          Dst:             i2d_PUBKEY_bio
        - Src:             'external/njs_webcrypto_module.c:5019,13'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:5020,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:5024,9'
          Dst:             BIO_ctrl
        - Src:             'external/njs_webcrypto_module.c:5026,15'
          Dst:             njs_webcrypto_array_buffer
        - Src:             'external/njs_webcrypto_module.c:5028,9'
          Dst:             BIO_free
        - Src:             'external/njs_webcrypto_module.c:5037,20'
          Dst:             njs_export_raw_ec
        - Src:             'external/njs_webcrypto_module.c:5048,17'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'external/njs_webcrypto_module.c:5051,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:5055,20'
          Dst:             njs_webcrypto_array_buffer
        - Src:             'external/njs_webcrypto_module.c:5059,16'
          Dst:             njs_vm_value_array_buffer_set
    - functionName:    BIO_s_mem
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BIO_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY2PKCS8
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i2d_PKCS8_PRIV_KEY_INFO_bio
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BIO_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i2d_PUBKEY_bio
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_key_format
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5631
      functionLinenumberEnd: 5653
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          102
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_error2
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5637,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_webcrypto_module.c:5642,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:5645,13'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:5650,5'
          Dst:             njs_vm_error2
    - functionName:    njs_ext_derive_ecdh
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1644
      functionLinenumberEnd: 1822
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         74
      ICount:          562
      EdgeCount:       104
      CyclomaticComplexity: 32
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_derive
        - EVP_PKEY_derive_init
        - EVP_PKEY_derive_set_peer
        - njs_algorithm_hash
        - njs_key_algorithm
        - njs_key_usage
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_value_bool
        - njs_value_to_integer
        - njs_vm_error2
        - njs_vm_external
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - njs_vm_value_array_buffer_set
        - njs_webcrypto_error
        - njs_webcrypto_result
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:1662,16'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:1667,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1669,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1678,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_webcrypto_module.c:1687,15'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:1693,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1697,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1697,16'
          Dst:             njs_mp_zalloc
        - Src:             'external/njs_webcrypto_module.c:1700,13'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1708,13'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1711,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1715,12'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:1717,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1722,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1729,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1734,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1739,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1746,12'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'external/njs_webcrypto_module.c:1748,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1752,9'
          Dst:             EVP_PKEY_derive_init
        - Src:             'external/njs_webcrypto_module.c:1753,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1754,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:1758,9'
          Dst:             EVP_PKEY_derive_set_peer
        - Src:             'external/njs_webcrypto_module.c:1759,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1760,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:1765,9'
          Dst:             EVP_PKEY_derive
        - Src:             'external/njs_webcrypto_module.c:1766,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1767,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:1772,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1773,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:1777,22'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1777,9'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:1779,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1780,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:1784,9'
          Dst:             EVP_PKEY_derive
        - Src:             'external/njs_webcrypto_module.c:1785,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1786,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:1790,5'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:1794,19'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:1800,29'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:1805,15'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:1809,15'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:1817,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:1821,12'
          Dst:             njs_webcrypto_result
    - functionName:    njs_key_algorithm
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5767
      functionLinenumberEnd: 5804
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          138
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_strncasecmp
        - njs_value_is_object
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_error2
        - njs_vm_object_prop
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5775,9'
          Dst:             njs_value_is_object
        - Src:             'external/njs_webcrypto_module.c:5776,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:5778,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5786,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_webcrypto_module.c:5791,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_webcrypto_module.c:5794,13'
          Dst:             njs_strncasecmp
        - Src:             'external/njs_webcrypto_module.c:5801,5'
          Dst:             njs_vm_error2
    - functionName:    EVP_PKEY_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_derive_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_derive_set_peer
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_derive
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_result
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5974
      functionLinenumberEnd: 6013
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_promise_trampoline
        - njs_vm_enqueue_job
        - njs_vm_error2
        - njs_vm_exception_get
        - njs_vm_function_alloc
        - njs_vm_promise_create
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5979,11'
          Dst:             njs_vm_promise_create
        - Src:             'external/njs_webcrypto_module.c:5985,16'
          Dst:             njs_vm_function_alloc
        - Src:             'external/njs_webcrypto_module.c:5985,16'
          Dst:             njs_promise_trampoline
        - Src:             'external/njs_webcrypto_module.c:5993,9'
          Dst:             njs_vm_exception_get
        - Src:             'external/njs_webcrypto_module.c:5999,11'
          Dst:             njs_vm_enqueue_job
        - Src:             'external/njs_webcrypto_module.c:6010,5'
          Dst:             njs_vm_error2
    - functionName:    njs_promise_trampoline
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5958
      functionLinenumberEnd: 5968
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_value_function
        - njs_vm_invoke
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5961,16'
          Dst:             njs_value_function
        - Src:             'external/njs_webcrypto_module.c:5964,16'
          Dst:             njs_vm_invoke
    - functionName:    njs_cipher_aes_ctr128
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1182
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          149
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CipherFinal_ex
        - EVP_CipherInit_ex
        - EVP_CipherUpdate
        - njs_webcrypto_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:1142,11'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'external/njs_webcrypto_module.c:1144,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1148,11'
          Dst:             EVP_CipherInit_ex
        - Src:             'external/njs_webcrypto_module.c:1150,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1156,11'
          Dst:             EVP_CipherUpdate
        - Src:             'external/njs_webcrypto_module.c:1158,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1164,11'
          Dst:             EVP_CipherFinal_ex
        - Src:             'external/njs_webcrypto_module.c:1166,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1179,5'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    EVP_CIPHER_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CipherInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CipherUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CipherFinal_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_algorithm_hash_digest
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5882
      functionLinenumberEnd: 5899
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       21
      CyclomaticComplexity: 12
      functionsReached:
        - EVP_sha1
        - EVP_sha256
        - EVP_sha384
        - EVP_sha512
      functionUses:    7
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:5883,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5885,16'
          Dst:             EVP_sha256
        - Src:             'external/njs_webcrypto_module.c:5888,16'
          Dst:             EVP_sha384
        - Src:             'external/njs_webcrypto_module.c:5891,16'
          Dst:             EVP_sha512
        - Src:             'external/njs_webcrypto_module.c:5898,12'
          Dst:             EVP_sha1
    - functionName:    EVP_sha256
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha384
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha512
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha1
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_cipher_aes_kw
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1549
      functionLinenumberEnd: 1637
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          253
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CIPHER_CTX_set_flags
        - EVP_CipherInit_ex
        - EVP_CipherUpdate
        - EVP_aes_128_wrap
        - EVP_aes_192_wrap
        - EVP_aes_256_wrap
        - njs_mp_alloc
        - njs_vm_error2
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_value_array_buffer_set
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:1579,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:1558,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1563,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1569,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1574,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1581,18'
          Dst:             EVP_aes_128_wrap
        - Src:             'external/njs_webcrypto_module.c:1585,18'
          Dst:             EVP_aes_192_wrap
        - Src:             'external/njs_webcrypto_module.c:1589,18'
          Dst:             EVP_aes_256_wrap
        - Src:             'external/njs_webcrypto_module.c:1593,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1597,11'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'external/njs_webcrypto_module.c:1599,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1603,5'
          Dst:             EVP_CIPHER_CTX_set_flags
        - Src:             'external/njs_webcrypto_module.c:1605,11'
          Dst:             EVP_CipherInit_ex
        - Src:             'external/njs_webcrypto_module.c:1608,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1615,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1615,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:1617,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1622,11'
          Dst:             EVP_CipherUpdate
        - Src:             'external/njs_webcrypto_module.c:1624,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1630,11'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:1634,5'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    EVP_aes_128_wrap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_wrap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_wrap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_set_flags
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_cipher_aes_cbc
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1441
      functionLinenumberEnd: 1542
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          287
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CipherFinal_ex
        - EVP_CipherInit_ex
        - EVP_CipherUpdate
        - EVP_aes_128_cbc
        - EVP_aes_192_cbc
        - EVP_aes_256_cbc
        - njs_mp_alloc
        - njs_vm_error2
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - njs_vm_value_array_buffer_set
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:1454,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:1456,18'
          Dst:             EVP_aes_128_cbc
        - Src:             'external/njs_webcrypto_module.c:1460,18'
          Dst:             EVP_aes_192_cbc
        - Src:             'external/njs_webcrypto_module.c:1464,18'
          Dst:             EVP_aes_256_cbc
        - Src:             'external/njs_webcrypto_module.c:1468,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1472,13'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1474,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1478,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:1484,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1495,11'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'external/njs_webcrypto_module.c:1497,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1501,11'
          Dst:             EVP_CipherInit_ex
        - Src:             'external/njs_webcrypto_module.c:1504,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1510,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1510,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:1512,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1517,11'
          Dst:             EVP_CipherUpdate
        - Src:             'external/njs_webcrypto_module.c:1519,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1525,11'
          Dst:             EVP_CipherFinal_ex
        - Src:             'external/njs_webcrypto_module.c:1527,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1535,11'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:1539,5'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    EVP_aes_128_cbc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_cbc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_cbc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_cipher_aes_ctr
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1240
      functionLinenumberEnd: 1435
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          688
      EdgeCount:       99
      CyclomaticComplexity: 28
      functionsReached:
        - BN_bin2bn
        - BN_cmp
        - BN_free
        - BN_get_word
        - BN_lshift
        - BN_new
        - BN_set_word
        - BN_sub
        - BN_value_one
        - EVP_aes_128_ctr
        - EVP_aes_192_ctr
        - EVP_aes_256_ctr
        - njs_cipher_aes_ctr128
        - njs_mp_alloc
        - njs_value_to_integer
        - njs_vm_error2
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - njs_vm_value_array_buffer_set
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:1255,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:1257,18'
          Dst:             EVP_aes_128_ctr
        - Src:             'external/njs_webcrypto_module.c:1261,18'
          Dst:             EVP_aes_192_ctr
        - Src:             'external/njs_webcrypto_module.c:1265,18'
          Dst:             EVP_aes_256_ctr
        - Src:             'external/njs_webcrypto_module.c:1269,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1273,13'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1275,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1279,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:1285,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1290,13'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1292,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1296,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_webcrypto_module.c:1302,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1311,13'
          Dst:             BN_new
        - Src:             'external/njs_webcrypto_module.c:1313,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1317,28'
          Dst:             BN_value_one
        - Src:             'external/njs_webcrypto_module.c:1317,11'
          Dst:             BN_lshift
        - Src:             'external/njs_webcrypto_module.c:1319,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1324,11'
          Dst:             BN_bin2bn
        - Src:             'external/njs_webcrypto_module.c:1324,11'
          Dst:             BN_bin2bn
        - Src:             'external/njs_webcrypto_module.c:1326,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1331,14'
          Dst:             BN_new
        - Src:             'external/njs_webcrypto_module.c:1333,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1337,11'
          Dst:             BN_set_word
        - Src:             'external/njs_webcrypto_module.c:1339,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1344,11'
          Dst:             BN_cmp
        - Src:             'external/njs_webcrypto_module.c:1346,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1351,12'
          Dst:             BN_new
        - Src:             'external/njs_webcrypto_module.c:1353,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1357,11'
          Dst:             BN_sub
        - Src:             'external/njs_webcrypto_module.c:1359,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1364,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1364,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:1367,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1371,11'
          Dst:             BN_cmp
        - Src:             'external/njs_webcrypto_module.c:1379,15'
          Dst:             njs_cipher_aes_ctr128
        - Src:             'external/njs_webcrypto_module.c:1395,13'
          Dst:             BN_get_word
        - Src:             'external/njs_webcrypto_module.c:1397,11'
          Dst:             njs_cipher_aes_ctr128
        - Src:             'external/njs_webcrypto_module.c:1405,11'
          Dst:             njs_cipher_aes_ctr128
        - Src:             'external/njs_webcrypto_module.c:1416,11'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:1420,5'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:1423,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:1427,9'
          Dst:             BN_free
        - Src:             'external/njs_webcrypto_module.c:1431,9'
          Dst:             BN_free
    - functionName:    EVP_aes_128_ctr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_ctr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_ctr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_value_one
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_lshift
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_set_word
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_cmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_sub
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_get_word
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_cipher_aes_gcm
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 949
      functionLinenumberEnd: 1130
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         80
      ICount:          631
      EdgeCount:       110
      CyclomaticComplexity: 32
      functionsReached:
        - EVP_CIPHER_CTX_block_size
        - EVP_CIPHER_CTX_ctrl
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CipherFinal_ex
        - EVP_CipherInit_ex
        - EVP_CipherUpdate
        - EVP_aes_128_gcm
        - EVP_aes_192_gcm
        - EVP_aes_256_gcm
        - njs_mp_alloc
        - njs_value_is_undefined
        - njs_value_to_integer
        - njs_vm_error2
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - njs_vm_value_array_buffer_set
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:964,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:966,18'
          Dst:             EVP_aes_128_gcm
        - Src:             'external/njs_webcrypto_module.c:970,18'
          Dst:             EVP_aes_192_gcm
        - Src:             'external/njs_webcrypto_module.c:974,18'
          Dst:             EVP_aes_256_gcm
        - Src:             'external/njs_webcrypto_module.c:978,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:982,13'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:984,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:988,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:995,13'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:996,27'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:997,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_webcrypto_module.c:1011,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1018,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1022,11'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'external/njs_webcrypto_module.c:1024,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1028,11'
          Dst:             EVP_CipherInit_ex
        - Src:             'external/njs_webcrypto_module.c:1030,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1036,11'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:1038,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1043,11'
          Dst:             EVP_CipherInit_ex
        - Src:             'external/njs_webcrypto_module.c:1046,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1053,15'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:1056,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1064,13'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1065,27'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_webcrypto_module.c:1066,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:1073,15'
          Dst:             EVP_CipherUpdate
        - Src:             'external/njs_webcrypto_module.c:1075,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1082,29'
          Dst:             EVP_CIPHER_CTX_block_size
        - Src:             'external/njs_webcrypto_module.c:1083,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1083,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:1085,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1089,11'
          Dst:             EVP_CipherUpdate
        - Src:             'external/njs_webcrypto_module.c:1092,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1099,11'
          Dst:             EVP_CIPHER_CTX_block_size
        - Src:             'external/njs_webcrypto_module.c:1101,11'
          Dst:             EVP_CipherFinal_ex
        - Src:             'external/njs_webcrypto_module.c:1103,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1113,15'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:1115,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:1123,11'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:1127,5'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    EVP_aes_128_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_block_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_cipher_pkey
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 846
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          253
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - EVP_PKEY_CTX_ctrl
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - RSA_pkey_ctx_ctrl
        - njs_algorithm_hash_digest
        - njs_mp_alloc
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_value_array_buffer_set
        - njs_webcrypto_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:865,11'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'external/njs_webcrypto_module.c:867,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:882,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:888,11'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'external/njs_webcrypto_module.c:890,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:896,10'
          Dst:             njs_algorithm_hash_digest
        - Src:             'external/njs_webcrypto_module.c:898,11'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:900,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:905,11'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'external/njs_webcrypto_module.c:907,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:915,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:921,24'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:921,11'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:923,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:930,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:936,11'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:940,5'
          Dst:             EVP_PKEY_CTX_free
    - functionName:    EVP_PKEY_encrypt_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_encrypt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_decrypt_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_decrypt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_CTX_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_cipher_core
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5071
      functionLinenumberEnd: 5094
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - njs_cipher_aes_cbc
        - njs_cipher_aes_ctr
        - njs_cipher_aes_gcm
        - njs_cipher_aes_kw
        - njs_cipher_pkey
        - njs_vm_error2
      functionUses:    3
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:5072,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5074,16'
          Dst:             njs_cipher_pkey
        - Src:             'external/njs_webcrypto_module.c:5077,16'
          Dst:             njs_cipher_aes_gcm
        - Src:             'external/njs_webcrypto_module.c:5080,16'
          Dst:             njs_cipher_aes_ctr
        - Src:             'external/njs_webcrypto_module.c:5083,16'
          Dst:             njs_cipher_aes_cbc
        - Src:             'external/njs_webcrypto_module.c:5087,16'
          Dst:             njs_cipher_aes_kw
        - Src:             'external/njs_webcrypto_module.c:5091,9'
          Dst:             njs_vm_error2
    - functionName:    njs_ext_wrap_key
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5100
      functionLinenumberEnd: 5182
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          295
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - njs_algorithm_string
        - njs_key_algorithm
        - njs_key_format
        - njs_vm_error2
        - njs_vm_external
        - njs_vm_json_stringify
        - njs_vm_value_to_bytes
        - njs_webcrypto_cipher_core
        - njs_webcrypto_export_key_raw
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5109,11'
          Dst:             njs_key_format
        - Src:             'external/njs_webcrypto_module.c:5114,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:5117,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5121,20'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:5124,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5129,11'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:5135,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5140,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5145,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:5145,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:5145,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5151,11'
          Dst:             njs_webcrypto_export_key_raw
        - Src:             'external/njs_webcrypto_module.c:5160,15'
          Dst:             njs_vm_json_stringify
        - Src:             'external/njs_webcrypto_module.c:5169,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:5174,11'
          Dst:             njs_webcrypto_cipher_core
        - Src:             'external/njs_webcrypto_module.c:5177,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:5181,12'
          Dst:             njs_webcrypto_result
    - functionName:    njs_ext_unwrap_key
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5188
      functionLinenumberEnd: 5294
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          407
      EdgeCount:       80
      CyclomaticComplexity: 24
      functionsReached:
        - njs_algorithm_string
        - njs_key_algorithm
        - njs_key_format
        - njs_key_usage
        - njs_value_bool
        - njs_vm_error2
        - njs_vm_external
        - njs_vm_json_parse
        - njs_vm_value_string_create
        - njs_vm_value_to_bytes
        - njs_webcrypto_cipher_core
        - njs_webcrypto_import_key_internal
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5199,11'
          Dst:             njs_key_format
        - Src:             'external/njs_webcrypto_module.c:5204,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:5209,20'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:5212,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5217,11'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:5222,15'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:5227,19'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:5229,11'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:5235,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5240,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:5240,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:5240,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5246,11'
          Dst:             njs_webcrypto_cipher_core
        - Src:             'external/njs_webcrypto_module.c:5256,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:5262,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:5268,15'
          Dst:             njs_vm_json_parse
        - Src:             'external/njs_webcrypto_module.c:5271,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5279,11'
          Dst:             njs_webcrypto_import_key_internal
        - Src:             'external/njs_webcrypto_module.c:5289,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:5293,12'
          Dst:             njs_webcrypto_result
    - functionName:    njs_ext_sign
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4616
      functionLinenumberEnd: 4923
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         138
      ICount:          1027
      EdgeCount:       189
      CyclomaticComplexity: 53
      functionsReached:
        - EVP_DigestFinal_ex
        - EVP_DigestInit_ex
        - EVP_DigestSign
        - EVP_DigestSignInit
        - EVP_DigestUpdate
        - EVP_DigestVerify
        - EVP_DigestVerifyInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_MD_size
        - EVP_PKEY_CTX_ctrl
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_sign
        - EVP_PKEY_sign_init
        - EVP_PKEY_size
        - EVP_PKEY_verify
        - EVP_PKEY_verify_init
        - HMAC
        - memcmp
        - njs_algorithm_hash
        - njs_algorithm_hash_digest
        - njs_algorithm_string
        - njs_convert_der_to_p1363
        - njs_convert_p1363_to_der
        - njs_key_algorithm
        - njs_mp_alloc
        - njs_mp_zalloc
        - njs_set_rsa_padding
        - njs_value_boolean_set
        - njs_vm_error2
        - njs_vm_external
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_value_array_buffer_set
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:4699,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:4637,11'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:4642,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:4645,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4651,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4657,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4657,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:4657,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:4665,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:4670,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:4676,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:4685,15'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:4690,14'
          Dst:             njs_algorithm_hash_digest
        - Src:             'external/njs_webcrypto_module.c:4694,14'
          Dst:             njs_algorithm_hash_digest
        - Src:             'external/njs_webcrypto_module.c:4702,16'
          Dst:             EVP_MD_CTX_new
        - Src:             'external/njs_webcrypto_module.c:4704,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4709,19'
          Dst:             EVP_DigestSignInit
        - Src:             'external/njs_webcrypto_module.c:4712,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4718,19'
          Dst:             EVP_DigestSign
        - Src:             'external/njs_webcrypto_module.c:4721,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4725,32'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:4725,19'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:4727,17'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:4731,19'
          Dst:             EVP_DigestSign
        - Src:             'external/njs_webcrypto_module.c:4734,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4739,19'
          Dst:             EVP_DigestVerifyInit
        - Src:             'external/njs_webcrypto_module.c:4742,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4747,19'
          Dst:             EVP_DigestVerify
        - Src:             'external/njs_webcrypto_module.c:4750,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4756,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'external/njs_webcrypto_module.c:4763,17'
          Dst:             EVP_MD_size
        - Src:             'external/njs_webcrypto_module.c:4766,32'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:4766,19'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:4768,17'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:4778,13'
          Dst:             HMAC
        - Src:             'external/njs_webcrypto_module.c:4782,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4787,44'
          Dst:             memcmp
        - Src:             'external/njs_webcrypto_module.c:4796,16'
          Dst:             EVP_MD_CTX_new
        - Src:             'external/njs_webcrypto_module.c:4798,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4802,15'
          Dst:             EVP_DigestInit_ex
        - Src:             'external/njs_webcrypto_module.c:4804,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4808,15'
          Dst:             EVP_DigestUpdate
        - Src:             'external/njs_webcrypto_module.c:4810,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4814,15'
          Dst:             EVP_DigestFinal_ex
        - Src:             'external/njs_webcrypto_module.c:4816,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4820,16'
          Dst:             EVP_PKEY_size
        - Src:             'external/njs_webcrypto_module.c:4821,29'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:4821,15'
          Dst:             njs_mp_zalloc
        - Src:             'external/njs_webcrypto_module.c:4823,13'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:4827,16'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'external/njs_webcrypto_module.c:4829,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4834,19'
          Dst:             EVP_PKEY_sign_init
        - Src:             'external/njs_webcrypto_module.c:4836,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4841,19'
          Dst:             EVP_PKEY_verify_init
        - Src:             'external/njs_webcrypto_module.c:4843,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4848,15'
          Dst:             njs_set_rsa_padding
        - Src:             'external/njs_webcrypto_module.c:4853,15'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:4855,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4861,19'
          Dst:             EVP_PKEY_sign
        - Src:             'external/njs_webcrypto_module.c:4863,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4868,23'
          Dst:             njs_convert_der_to_p1363
        - Src:             'external/njs_webcrypto_module.c:4877,23'
          Dst:             njs_convert_p1363_to_der
        - Src:             'external/njs_webcrypto_module.c:4885,19'
          Dst:             EVP_PKEY_verify
        - Src:             'external/njs_webcrypto_module.c:4887,17'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:4892,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'external/njs_webcrypto_module.c:4894,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:4900,15'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:4907,9'
          Dst:             njs_value_boolean_set
        - Src:             'external/njs_webcrypto_module.c:4910,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:4915,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'external/njs_webcrypto_module.c:4919,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:4922,12'
          Dst:             njs_webcrypto_result
    - functionName:    EVP_DigestSignInit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestSign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestVerifyInit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestVerify
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_MD_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    HMAC
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_sign_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_verify_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_sign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_verify
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_ext_import_key
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4341
      functionLinenumberEnd: 4382
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          187
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - njs_key_algorithm
        - njs_key_format
        - njs_key_usage
        - njs_value_bool
        - njs_webcrypto_import_key_internal
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:4350,11'
          Dst:             njs_key_format
        - Src:             'external/njs_webcrypto_module.c:4356,11'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:4361,11'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:4366,19'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:4368,11'
          Dst:             njs_webcrypto_import_key_internal
        - Src:             'external/njs_webcrypto_module.c:4377,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:4381,12'
          Dst:             njs_webcrypto_result
    - functionName:    njs_ext_generate_key
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2870
      functionLinenumberEnd: 3196
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         125
      ICount:          937
      EdgeCount:       171
      CyclomaticComplexity: 48
      functionsReached:
        - EVP_MD_size
        - EVP_PKEY_CTX_ctrl
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new_id
        - EVP_PKEY_keygen
        - EVP_PKEY_keygen_init
        - EVP_PKEY_up_ref
        - RAND_bytes
        - RSA_pkey_ctx_ctrl
        - njs_algorithm_curve
        - njs_algorithm_hash
        - njs_algorithm_hash_digest
        - njs_algorithm_string
        - njs_key_algorithm
        - njs_key_usage
        - njs_mp_alloc
        - njs_value_bool
        - njs_value_is_number
        - njs_value_number
        - njs_vm_error2
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_alloc
        - njs_vm_object_prop
        - njs_vm_object_prop_set
        - njs_webcrypto_error
        - njs_webcrypto_generate_25519_keypair
        - njs_webcrypto_key_alloc
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:2909,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2886,19'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:2888,11'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:2893,11'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:2898,11'
          Dst:             njs_webcrypto_key_alloc
        - Src:             'external/njs_webcrypto_module.c:2904,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:2904,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2913,15'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:2918,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:2923,14'
          Dst:             njs_value_is_number
        - Src:             'external/njs_webcrypto_module.c:2924,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2928,15'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'external/njs_webcrypto_module.c:2930,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2934,13'
          Dst:             EVP_PKEY_keygen_init
        - Src:             'external/njs_webcrypto_module.c:2935,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2939,13'
          Dst:             njs_value_number
        - Src:             'external/njs_webcrypto_module.c:2939,13'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'external/njs_webcrypto_module.c:2940,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2945,13'
          Dst:             EVP_PKEY_keygen
        - Src:             'external/njs_webcrypto_module.c:2946,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2950,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:2958,18'
          Dst:             njs_webcrypto_key_alloc
        - Src:             'external/njs_webcrypto_module.c:2963,13'
          Dst:             EVP_PKEY_up_ref
        - Src:             'external/njs_webcrypto_module.c:2964,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2974,15'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:2980,15'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:2986,15'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:2991,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:2997,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:3007,15'
          Dst:             njs_algorithm_curve
        - Src:             'external/njs_webcrypto_module.c:3012,15'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'external/njs_webcrypto_module.c:3014,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3018,13'
          Dst:             EVP_PKEY_keygen_init
        - Src:             'external/njs_webcrypto_module.c:3019,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3023,13'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:3024,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3029,13'
          Dst:             EVP_PKEY_keygen
        - Src:             'external/njs_webcrypto_module.c:3030,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3034,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:3047,18'
          Dst:             njs_webcrypto_key_alloc
        - Src:             'external/njs_webcrypto_module.c:3052,13'
          Dst:             EVP_PKEY_up_ref
        - Src:             'external/njs_webcrypto_module.c:3053,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3069,15'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:3075,15'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:3081,15'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:3086,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:3092,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:3102,15'
          Dst:             njs_webcrypto_generate_25519_keypair
        - Src:             'external/njs_webcrypto_module.c:3115,15'
          Dst:             njs_webcrypto_generate_25519_keypair
        - Src:             'external/njs_webcrypto_module.c:3136,19'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:3142,43'
          Dst:             njs_algorithm_hash_digest
        - Src:             'external/njs_webcrypto_module.c:3142,31'
          Dst:             EVP_MD_size
        - Src:             'external/njs_webcrypto_module.c:3145,19'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:3147,39'
          Dst:             njs_value_number
        - Src:             'external/njs_webcrypto_module.c:3153,21'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:3153,21'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3161,43'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:3161,30'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:3164,13'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:3168,13'
          Dst:             RAND_bytes
        - Src:             'external/njs_webcrypto_module.c:3169,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:3173,15'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:3182,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:3182,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:3187,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:3192,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:3195,12'
          Dst:             njs_webcrypto_result
    - functionName:    RAND_bytes
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_ext_export_key
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2736
      functionLinenumberEnd: 2776
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          163
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - njs_algorithm_string
        - njs_format_string
        - njs_key_format
        - njs_vm_error2
        - njs_vm_external
        - njs_webcrypto_export_key_raw
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2742,11'
          Dst:             njs_key_format
        - Src:             'external/njs_webcrypto_module.c:2747,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:2750,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2755,9'
          Dst:             njs_format_string
        - Src:             'external/njs_webcrypto_module.c:2755,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:2755,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2762,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2766,11'
          Dst:             njs_webcrypto_export_key_raw
        - Src:             'external/njs_webcrypto_module.c:2771,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:2775,12'
          Dst:             njs_webcrypto_result
    - functionName:    njs_ext_digest
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2140
      functionLinenumberEnd: 2184
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          167
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_Digest
        - EVP_MD_size
        - njs_algorithm_hash
        - njs_algorithm_hash_digest
        - njs_mp_zalloc
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_value_array_buffer_set
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:2149,11'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:2154,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:2159,10'
          Dst:             njs_algorithm_hash_digest
        - Src:             'external/njs_webcrypto_module.c:2160,12'
          Dst:             EVP_MD_size
        - Src:             'external/njs_webcrypto_module.c:2162,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:2162,11'
          Dst:             njs_mp_zalloc
        - Src:             'external/njs_webcrypto_module.c:2164,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:2168,11'
          Dst:             EVP_Digest
        - Src:             'external/njs_webcrypto_module.c:2170,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2174,11'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:2179,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:2183,12'
          Dst:             njs_webcrypto_result
    - functionName:    EVP_Digest
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_ext_derive
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1828
      functionLinenumberEnd: 2134
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         126
      ICount:          953
      EdgeCount:       172
      CyclomaticComplexity: 48
      functionsReached:
        - EVP_PKEY_CTX_ctrl
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new_id
        - EVP_PKEY_derive
        - EVP_PKEY_derive_init
        - PKCS5_PBKDF2_HMAC
        - njs_algorithm_hash
        - njs_algorithm_hash_digest
        - njs_algorithm_string
        - njs_ext_derive_ecdh
        - njs_key_algorithm
        - njs_key_usage
        - njs_mp_zalloc
        - njs_value_bool
        - njs_value_to_integer
        - njs_vm_error2
        - njs_vm_external
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - njs_vm_value_array_buffer_set
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:1909,9'
          Branch Sides:    []
        - Branch String:   'external/njs_webcrypto_module.c:1961,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:1848,11'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:1853,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:1856,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1862,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1868,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:1868,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:1868,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1878,16'
          Dst:             njs_ext_derive_ecdh
        - Src:             'external/njs_webcrypto_module.c:1884,16'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:1889,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1891,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1900,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_webcrypto_module.c:1916,17'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:1916,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1928,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:1928,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1933,15'
          Dst:             njs_key_usage
        - Src:             'external/njs_webcrypto_module.c:1939,13'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:1939,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1944,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1944,16'
          Dst:             njs_mp_zalloc
        - Src:             'external/njs_webcrypto_module.c:1947,13'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1955,23'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:1955,9'
          Dst:             njs_mp_zalloc
        - Src:             'external/njs_webcrypto_module.c:1957,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:1963,15'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:1968,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1970,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1974,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:1980,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1985,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:1987,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:1992,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_webcrypto_module.c:1997,14'
          Dst:             njs_algorithm_hash_digest
        - Src:             'external/njs_webcrypto_module.c:1999,15'
          Dst:             PKCS5_PBKDF2_HMAC
        - Src:             'external/njs_webcrypto_module.c:2003,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2010,15'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:2015,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:2017,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2021,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:2026,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_webcrypto_module.c:2028,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2032,15'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:2037,16'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'external/njs_webcrypto_module.c:2039,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2043,15'
          Dst:             EVP_PKEY_derive_init
        - Src:             'external/njs_webcrypto_module.c:2045,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2049,14'
          Dst:             njs_algorithm_hash_digest
        - Src:             'external/njs_webcrypto_module.c:2051,15'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:2053,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2057,15'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:2059,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2063,15'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:2066,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2070,15'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'external/njs_webcrypto_module.c:2072,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2077,15'
          Dst:             EVP_PKEY_derive
        - Src:             'external/njs_webcrypto_module.c:2079,13'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:2085,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'external/njs_webcrypto_module.c:2100,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:2100,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:2107,19'
          Dst:             njs_algorithm_hash
        - Src:             'external/njs_webcrypto_module.c:2113,29'
          Dst:             njs_value_bool
        - Src:             'external/njs_webcrypto_module.c:2117,15'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:2121,15'
          Dst:             njs_vm_value_array_buffer_set
        - Src:             'external/njs_webcrypto_module.c:2129,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:2133,12'
          Dst:             njs_webcrypto_result
    - functionName:    PKCS5_PBKDF2_HMAC
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_ext_cipher
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          222
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - njs_algorithm_string
        - njs_key_algorithm
        - njs_vm_error2
        - njs_vm_external
        - njs_vm_value_to_bytes
        - njs_webcrypto_cipher_core
        - njs_webcrypto_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:795,11'
          Dst:             njs_key_algorithm
        - Src:             'external/njs_webcrypto_module.c:800,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:803,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:814,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:820,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:820,9'
          Dst:             njs_algorithm_string
        - Src:             'external/njs_webcrypto_module.c:820,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:827,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:832,11'
          Dst:             njs_webcrypto_cipher_core
        - Src:             'external/njs_webcrypto_module.c:835,12'
          Dst:             njs_webcrypto_result
        - Src:             'external/njs_webcrypto_module.c:839,12'
          Dst:             njs_webcrypto_result
    - functionName:    njs_ext_random_uuid
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5555
      functionLinenumberEnd: 5582
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          147
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - RAND_bytes
        - njs_vm_value_string_create
        - njs_webcrypto_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5562,9'
          Dst:             RAND_bytes
        - Src:             'external/njs_webcrypto_module.c:5563,9'
          Dst:             njs_webcrypto_error
        - Src:             'external/njs_webcrypto_module.c:5581,12'
          Dst:             njs_vm_value_string_create
    - functionName:    njs_ext_get_random_values
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5524
      functionLinenumberEnd: 5549
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          99
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - RAND_bytes
        - njs_vm_error2
        - njs_vm_value_to_bytes
        - njs_webcrypto_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5531,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_webcrypto_module.c:5537,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_webcrypto_module.c:5541,9'
          Dst:             RAND_bytes
        - Src:             'external/njs_webcrypto_module.c:5542,9'
          Dst:             njs_webcrypto_error
    - functionName:    njs_algorithm_hash_name
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5867
      functionLinenumberEnd: 5877
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_key_ext_usages
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5508
      functionLinenumberEnd: 5518
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_key_ops
        - njs_value_undefined_set
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5511,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:5513,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:5517,12'
          Dst:             njs_key_ops
    - functionName:    njs_key_ext_type
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5482
      functionLinenumberEnd: 5502
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - njs_value_undefined_set
        - njs_vm_external
        - njs_vm_value_string_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5486,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:5488,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:5493,16'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:5497,16'
          Dst:             njs_vm_value_string_create
    - functionName:    njs_key_ext_extractable
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5464
      functionLinenumberEnd: 5476
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_value_boolean_set
        - njs_value_undefined_set
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5467,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:5469,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:5473,5'
          Dst:             njs_value_boolean_set
    - functionName:    njs_key_ext_algorithm
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5300
      functionLinenumberEnd: 5458
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          492
      EdgeCount:       70
      CyclomaticComplexity: 17
      functionsReached:
        - BN_bn2bin
        - BN_num_bits
        - EC_GROUP_get_curve_name
        - EC_KEY_get0_group
        - EVP_PKEY_get0_EC_KEY
        - EVP_PKEY_get0_RSA
        - RSA_get0_key
        - njs_algorithm_curve_name
        - njs_algorithm_hash_name
        - njs_mp_alloc
        - njs_value_number_set
        - njs_value_undefined_set
        - njs_vm_external
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_alloc
        - njs_vm_object_prop_set
        - njs_vm_value_buffer_set
        - njs_vm_value_string_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_webcrypto_module.c:5332,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:5311,11'
          Dst:             njs_vm_external
        - Src:             'external/njs_webcrypto_module.c:5313,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_webcrypto_module.c:5318,11'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:5324,12'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:5327,11'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:5341,26'
          Dst:             EVP_PKEY_get0_RSA
        - Src:             'external/njs_webcrypto_module.c:5341,9'
          Dst:             RSA_get0_key
        - Src:             'external/njs_webcrypto_module.c:5344,51'
          Dst:             BN_num_bits
        - Src:             'external/njs_webcrypto_module.c:5344,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_webcrypto_module.c:5346,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:5351,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_webcrypto_module.c:5351,54'
          Dst:             BN_num_bits
        - Src:             'external/njs_webcrypto_module.c:5351,17'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_webcrypto_module.c:5353,13'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_webcrypto_module.c:5357,9'
          Dst:             BN_bn2bin
        - Src:             'external/njs_webcrypto_module.c:5360,39'
          Dst:             BN_num_bits
        - Src:             'external/njs_webcrypto_module.c:5359,15'
          Dst:             njs_vm_value_buffer_set
        - Src:             'external/njs_webcrypto_module.c:5365,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:5370,16'
          Dst:             njs_algorithm_hash_name
        - Src:             'external/njs_webcrypto_module.c:5371,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:5377,15'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_webcrypto_module.c:5382,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:5388,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:5401,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_webcrypto_module.c:5403,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:5417,35'
          Dst:             EVP_PKEY_get0_EC_KEY
        - Src:             'external/njs_webcrypto_module.c:5417,17'
          Dst:             EC_KEY_get0_group
        - Src:             'external/njs_webcrypto_module.c:5419,41'
          Dst:             EC_GROUP_get_curve_name
        - Src:             'external/njs_webcrypto_module.c:5419,16'
          Dst:             njs_algorithm_curve_name
        - Src:             'external/njs_webcrypto_module.c:5421,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:5427,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_webcrypto_module.c:5442,16'
          Dst:             njs_algorithm_hash_name
        - Src:             'external/njs_webcrypto_module.c:5443,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_webcrypto_module.c:5449,15'
          Dst:             njs_vm_object_prop_set
    - functionName:    BN_bn2bin
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_webcrypto_init
      functionSourceFile: '/src/njs/external/njs_webcrypto_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6120
      functionLinenumberEnd: 6156
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - njs_vm_bind
        - njs_vm_external_create
        - njs_vm_external_prototype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_webcrypto_module.c:6130,9'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_webcrypto_module.c:6136,16'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_webcrypto_module.c:6142,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_webcrypto_module.c:6150,11'
          Dst:             njs_vm_bind
    - functionName:    njs_zlib_free
      functionSourceFile: '/src/njs/external/njs_zlib_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_zlib_alloc
      functionSourceFile: '/src/njs/external/njs_zlib_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_mp_alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_zlib_module.c:564,12'
          Dst:             njs_mp_alloc
    - functionName:    njs_zlib_ext_inflate
      functionSourceFile: '/src/njs/external/njs_zlib_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          496
      EdgeCount:       92
      CyclomaticComplexity: 27
      functionsReached:
        - inflate
        - inflateEnd
        - inflateInit2_
        - inflateSetDictionary
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_join_to
        - njs_chb_reserve
        - njs_mp_alloc
        - njs_mp_free
        - njs_value_is_object
        - njs_value_number
        - njs_vm_error2
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - njs_vm_value_buffer_set
        - njs_vm_value_to_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_zlib_module.c:393,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_zlib_module.c:404,9'
          Dst:             njs_value_is_object
        - Src:             'external/njs_zlib_module.c:405,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:407,26'
          Dst:             njs_value_number
        - Src:             'external/njs_zlib_module.c:410,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:415,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:417,27'
          Dst:             njs_value_number
        - Src:             'external/njs_zlib_module.c:421,21'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:428,21'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:435,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:437,19'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_zlib_module.c:449,21'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_zlib_module.c:451,10'
          Dst:             inflateInit2_
        - Src:             'external/njs_zlib_module.c:453,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:458,14'
          Dst:             inflateSetDictionary
        - Src:             'external/njs_zlib_module.c:460,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:465,5'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_zlib_module.c:465,5'
          Dst:             njs_chb_init
        - Src:             'external/njs_zlib_module.c:465,5'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_zlib_module.c:465,5'
          Dst:             njs_mp_free
        - Src:             'external/njs_zlib_module.c:468,27'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_zlib_module.c:470,13'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_zlib_module.c:476,14'
          Dst:             inflate
        - Src:             'external/njs_zlib_module.c:478,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:484,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:491,10'
          Dst:             inflateEnd
        - Src:             'external/njs_zlib_module.c:493,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:499,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_zlib_module.c:503,27'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_zlib_module.c:503,14'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_zlib_module.c:508,5'
          Dst:             njs_chb_join_to
        - Src:             'external/njs_zlib_module.c:510,5'
          Dst:             njs_chb_destroy
        - Src:             'external/njs_zlib_module.c:512,12'
          Dst:             njs_vm_value_buffer_set
        - Src:             'external/njs_zlib_module.c:516,5'
          Dst:             inflateEnd
        - Src:             'external/njs_zlib_module.c:517,5'
          Dst:             njs_chb_destroy
    - functionName:    inflateInit2_
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inflateSetDictionary
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inflate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inflateEnd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_zlib_ext_deflate
      functionSourceFile: '/src/njs/external/njs_zlib_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         91
      ICount:          627
      EdgeCount:       120
      CyclomaticComplexity: 31
      functionsReached:
        - deflate
        - deflateEnd
        - deflateInit2_
        - deflateSetDictionary
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_join_to
        - njs_chb_reserve
        - njs_mp_alloc
        - njs_mp_free
        - njs_value_is_object
        - njs_value_number
        - njs_vm_error2
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - njs_vm_value_buffer_set
        - njs_vm_value_to_bytes
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_zlib_module.c:279,13'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_zlib_module.c:207,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_zlib_module.c:221,9'
          Dst:             njs_value_is_object
        - Src:             'external/njs_zlib_module.c:222,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:224,26'
          Dst:             njs_value_number
        - Src:             'external/njs_zlib_module.c:227,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:232,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:234,21'
          Dst:             njs_value_number
        - Src:             'external/njs_zlib_module.c:239,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:245,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:247,27'
          Dst:             njs_value_number
        - Src:             'external/njs_zlib_module.c:251,21'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:258,21'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:265,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:267,25'
          Dst:             njs_value_number
        - Src:             'external/njs_zlib_module.c:270,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:275,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:277,24'
          Dst:             njs_value_number
        - Src:             'external/njs_zlib_module.c:288,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:293,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_zlib_module.c:295,19'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_zlib_module.c:307,21'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_zlib_module.c:309,10'
          Dst:             deflateInit2_
        - Src:             'external/njs_zlib_module.c:312,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:317,14'
          Dst:             deflateSetDictionary
        - Src:             'external/njs_zlib_module.c:319,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:324,5'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_zlib_module.c:324,5'
          Dst:             njs_chb_init
        - Src:             'external/njs_zlib_module.c:324,5'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_zlib_module.c:324,5'
          Dst:             njs_mp_free
        - Src:             'external/njs_zlib_module.c:327,27'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_zlib_module.c:329,13'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_zlib_module.c:335,14'
          Dst:             deflate
        - Src:             'external/njs_zlib_module.c:337,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_zlib_module.c:346,5'
          Dst:             deflateEnd
        - Src:             'external/njs_zlib_module.c:350,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_zlib_module.c:354,27'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_zlib_module.c:354,14'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_zlib_module.c:359,5'
          Dst:             njs_chb_join_to
        - Src:             'external/njs_zlib_module.c:361,5'
          Dst:             njs_chb_destroy
        - Src:             'external/njs_zlib_module.c:363,12'
          Dst:             njs_vm_value_buffer_set
        - Src:             'external/njs_zlib_module.c:367,5'
          Dst:             deflateEnd
        - Src:             'external/njs_zlib_module.c:368,5'
          Dst:             njs_chb_destroy
    - functionName:    deflateInit2_
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    deflateSetDictionary
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    deflate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    deflateEnd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_zlib_constant
      functionSourceFile: '/src/njs/external/njs_zlib_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_value_number_set
        - njs_vm_prop_magic32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_zlib_module.c:527,35'
          Dst:             njs_vm_prop_magic32
        - Src:             'external/njs_zlib_module.c:527,5'
          Dst:             njs_value_number_set
    - functionName:    njs_zlib_init
      functionSourceFile: '/src/njs/external/njs_zlib_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_vm_add_module
        - njs_vm_external_create
        - njs_vm_external_prototype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_zlib_module.c:540,16'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_zlib_module.c:546,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_zlib_module.c:551,14'
          Dst:             njs_vm_add_module
    - functionName:    njs_ftw
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3010
      functionLinenumberEnd: 3147
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         109
      ICount:          595
      EdgeCount:       147
      CyclomaticComplexity: 40
      functionsReached:
        - __errno_location
        - close
        - closedir
        - fdopendir
        - lstat
        - njs_ftw
        - open
        - readdir
        - stat
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3019,36'
          Dst:             lstat
        - Src:             'external/njs_fs_module.c:3019,55'
          Dst:             stat
        - Src:             'external/njs_fs_module.c:3022,40'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3022,60'
          Dst:             lstat
        - Src:             'external/njs_fs_module.c:3025,20'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3052,11'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:3063,15'
          Dst:             open
        - Src:             'external/njs_fs_module.c:3065,17'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3081,13'
          Dst:             fdopendir
        - Src:             'external/njs_fs_module.c:3088,21'
          Dst:             readdir
        - Src:             'external/njs_fs_module.c:3095,22'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:3104,17'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3113,23'
          Dst:             njs_ftw
        - Src:             'external/njs_fs_module.c:3120,16'
          Dst:             closedir
        - Src:             'external/njs_fs_module.c:3140,16'
          Dst:             closedir
        - Src:             'external/njs_fs_module.c:3143,16'
          Dst:             close
    - functionName:    lstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fdopendir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    readdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    closedir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_rmtree_cb
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3171
      functionLinenumberEnd: 3180
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3174,11'
          Dst:             remove
    - functionName:    remove
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_file_tree_walk
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3153
      functionLinenumberEnd: 3166
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - njs_ftw
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3157,11'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:3159,9'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3165,12'
          Dst:             njs_ftw
    - functionName:    njs_fs_rmtree
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3186
      functionLinenumberEnd: 3211
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          100
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - njs_file_tree_walk
        - njs_fs_error
        - njs_fs_rmtree_cb
        - njs_value_undefined_set
        - rmdir
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3190,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:3192,11'
          Dst:             rmdir
        - Src:             'external/njs_fs_module.c:3197,28'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3197,19'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:3199,23'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3199,45'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3200,15'
          Dst:             njs_file_tree_walk
        - Src:             'external/njs_fs_module.c:3200,15'
          Dst:             njs_fs_rmtree_cb
        - Src:             'external/njs_fs_module.c:3207,32'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3207,23'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:3210,57'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:3210,12'
          Dst:             njs_fs_error
    - functionName:    rmdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_error
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3310
      functionLinenumberEnd: 3380
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          221
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - njs_errno_string
        - njs_value_number_set
        - njs_vm_error2
        - njs_vm_exception_get
        - njs_vm_object_prop_set
        - njs_vm_value_string_create
        - strlen
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3321,34'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:3323,5'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3325,5'
          Dst:             njs_vm_exception_get
        - Src:             'external/njs_fs_module.c:3328,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_fs_module.c:3329,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_fs_module.c:3335,16'
          Dst:             njs_errno_string
        - Src:             'external/njs_fs_module.c:3338,59'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:3337,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_fs_module.c:3343,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_fs_module.c:3352,59'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:3351,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_fs_module.c:3357,15'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_fs_module.c:3367,42'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:3365,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_fs_module.c:3372,15'
          Dst:             njs_vm_object_prop_set
    - functionName:    njs_fs_fd_read
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2853
      functionLinenumberEnd: 2908
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          186
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - njs_mp_alloc
        - njs_mp_free
        - njs_vm_memory_error
        - njs_vm_memory_pool
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2864,32'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:2864,19'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_fs_module.c:2866,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_fs_module.c:2874,13'
          Dst:             read
        - Src:             'external/njs_fs_module.c:2889,34'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:2889,21'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_fs_module.c:2891,17'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_fs_module.c:2897,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:2897,13'
          Dst:             njs_mp_free
    - functionName:    njs_fs_filehandle_cleanup
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3800
      functionLinenumberEnd: 3806
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3804,16'
          Dst:             close
    - functionName:    njs_fs_filehandle_create
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3812
      functionLinenumberEnd: 3836
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          93
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - njs_mp_alloc
        - njs_mp_cleanup_add
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3816,23'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:3816,10'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_fs_module.c:3818,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_fs_module.c:3825,30'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:3825,11'
          Dst:             njs_mp_cleanup_add
        - Src:             'external/njs_fs_module.c:3827,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_fs_module.c:3834,12'
          Dst:             njs_vm_external_create
    - functionName:    njs_fs_make_path
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2914
      functionLinenumberEnd: 2995
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          230
      EdgeCount:       45
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - mkdir
        - njs_fs_error
        - njs_value_undefined_set
        - njs_vm_error2
        - stat
        - strchr
        - strerror
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'external/njs_fs_module.c:2954,13'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_fs_module.c:2920,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2922,18'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:2925,15'
          Dst:             mkdir
        - Src:             'external/njs_fs_module.c:2927,19'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2938,13'
          Dst:             strchr
        - Src:             'external/njs_fs_module.c:2944,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2950,15'
          Dst:             mkdir
        - Src:             'external/njs_fs_module.c:2951,15'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2962,23'
          Dst:             stat
        - Src:             'external/njs_fs_module.c:2994,38'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2994,12'
          Dst:             njs_fs_error
    - functionName:    mkdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_constant
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3882
      functionLinenumberEnd: 3885
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_value_number_set
        - njs_vm_prop_magic32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3883,35'
          Dst:             njs_vm_prop_magic32
        - Src:             'external/njs_fs_module.c:3883,5'
          Dst:             njs_value_number_set
    - functionName:    njs_fs_mode
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3287
      functionLinenumberEnd: 3304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_value_is_undefined
        - njs_value_to_integer
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3294,9'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:3298,11'
          Dst:             njs_value_to_integer
    - functionName:    njs_fs_flags
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3257
      functionLinenumberEnd: 3282
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          115
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_error2
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3262,9'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:3266,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_fs_module.c:3271,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_fs_module.c:3274,13'
          Dst:             memcmp
        - Src:             'external/njs_fs_module.c:3279,5'
          Dst:             njs_vm_error2
    - functionName:    njs_fs_unlink
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2526
      functionLinenumberEnd: 2560
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          148
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_value_is_function
        - njs_value_undefined_set
        - njs_vm_error2
        - strerror
        - unlink
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2533,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2542,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2543,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2548,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2550,11'
          Dst:             unlink
        - Src:             'external/njs_fs_module.c:2552,51'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2552,42'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2552,65'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2552,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2556,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_path
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3217
      functionLinenumberEnd: 3252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          127
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - memchr
        - njs_value_buffer_get
        - njs_value_is_buffer
        - njs_value_is_string
        - njs_value_string_get
        - njs_vm_error2
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3222,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:3223,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_fs_module.c:3225,16'
          Dst:             njs_value_is_buffer
        - Src:             'external/njs_fs_module.c:3226,15'
          Dst:             njs_value_buffer_get
        - Src:             'external/njs_fs_module.c:3232,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3237,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3242,9'
          Dst:             memchr
        - Src:             'external/njs_fs_module.c:3243,9'
          Dst:             njs_vm_error2
    - functionName:    unlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_result
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3398
      functionLinenumberEnd: 3463
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          175
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - ngx_fs_promise_trampoline
        - njs_value_function
        - njs_value_is_error
        - njs_value_undefined_set
        - njs_vm_enqueue_job
        - njs_vm_error2
        - njs_vm_function_alloc
        - njs_vm_promise_create
        - njs_vm_throw
      functionUses:    18
      BranchProfiles:
        - Branch String:   'external/njs_fs_module.c:3403,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_fs_module.c:3405,13'
          Dst:             njs_value_is_error
        - Src:             'external/njs_fs_module.c:3406,13'
          Dst:             njs_vm_throw
        - Src:             'external/njs_fs_module.c:3414,15'
          Dst:             njs_vm_promise_create
        - Src:             'external/njs_fs_module.c:3420,14'
          Dst:             njs_vm_function_alloc
        - Src:             'external/njs_fs_module.c:3420,14'
          Dst:             ngx_fs_promise_trampoline
        - Src:             'external/njs_fs_module.c:3425,9'
          Dst:             njs_value_is_error
        - Src:             'external/njs_fs_module.c:3429,15'
          Dst:             njs_vm_enqueue_job
        - Src:             'external/njs_fs_module.c:3439,13'
          Dst:             njs_value_is_error
        - Src:             'external/njs_fs_module.c:3441,13'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:3444,13'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:3448,38'
          Dst:             njs_value_function
        - Src:             'external/njs_fs_module.c:3448,15'
          Dst:             njs_vm_enqueue_job
        - Src:             'external/njs_fs_module.c:3454,9'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:3459,9'
          Dst:             njs_vm_error2
    - functionName:    ngx_fs_promise_trampoline
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3386
      functionLinenumberEnd: 3391
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_value_function
        - njs_vm_call
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3389,16'
          Dst:             njs_value_function
        - Src:             'external/njs_fs_module.c:3391,12'
          Dst:             njs_vm_call
    - functionName:    njs_fs_symlink
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2467
      functionLinenumberEnd: 2520
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          271
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - __errno_location
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_value_is_function
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_undefined_set
        - njs_vm_error2
        - strerror
        - symlink
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2475,14'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2480,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2490,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2491,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2500,9'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:2500,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:2503,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2507,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2509,11'
          Dst:             symlink
        - Src:             'external/njs_fs_module.c:2511,52'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2511,43'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2511,66'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2511,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2516,16'
          Dst:             njs_fs_result
    - functionName:    symlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_rmdir
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2297
      functionLinenumberEnd: 2344
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          222
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - njs_fs_path
        - njs_fs_result
        - njs_fs_rmtree
        - njs_value_bool
        - njs_value_boolean_set
        - njs_value_is_function
        - njs_value_is_object
        - njs_value_is_undefined
        - njs_vm_error2
        - njs_vm_object_prop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2304,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2314,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2315,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2323,5'
          Dst:             njs_value_boolean_set
        - Src:             'external/njs_fs_module.c:2325,9'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:2326,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:2327,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2332,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2336,35'
          Dst:             njs_value_bool
        - Src:             'external/njs_fs_module.c:2336,11'
          Dst:             njs_fs_rmtree
        - Src:             'external/njs_fs_module.c:2340,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_rename
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2251
      functionLinenumberEnd: 2291
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          181
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_value_is_function
        - njs_value_undefined_set
        - njs_vm_error2
        - rename
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2263,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2264,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2269,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2274,15'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2279,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2281,11'
          Dst:             rename
        - Src:             'external/njs_fs_module.c:2283,51'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2283,42'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2283,65'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2283,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2287,16'
          Dst:             njs_fs_result
    - functionName:    rename
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_realpath
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2160
      functionLinenumberEnd: 2245
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          345
      EdgeCount:       75
      CyclomaticComplexity: 21
      functionsReached:
        - __errno_location
        - memcmp
        - njs_buffer_encoding
        - njs_buffer_new
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_value_is_function
        - njs_value_is_object
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
        - realpath
        - strerror
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2170,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2180,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2181,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2190,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2192,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:2195,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:2196,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:2197,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2202,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2207,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:2208,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_fs_module.c:2215,10'
          Dst:             memcmp
        - Src:             'external/njs_fs_module.c:2216,20'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_fs_module.c:2222,26'
          Dst:             realpath
        - Src:             'external/njs_fs_module.c:2224,53'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2224,44'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2224,67'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2224,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2229,16'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:2232,15'
          Dst:             njs_buffer_new
        - Src:             'external/njs_fs_module.c:2241,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_readlink
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2067
      functionLinenumberEnd: 2154
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          346
      EdgeCount:       75
      CyclomaticComplexity: 21
      functionsReached:
        - __errno_location
        - memcmp
        - njs_buffer_encoding
        - njs_buffer_new
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_value_is_function
        - njs_value_is_object
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
        - readlink
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2078,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2088,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2089,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2098,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2100,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:2103,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:2104,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:2105,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2110,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2115,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:2116,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_fs_module.c:2123,10'
          Dst:             memcmp
        - Src:             'external/njs_fs_module.c:2124,20'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_fs_module.c:2131,9'
          Dst:             readlink
        - Src:             'external/njs_fs_module.c:2133,53'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2133,44'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2133,67'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2133,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2141,15'
          Dst:             njs_buffer_new
        - Src:             'external/njs_fs_module.c:2150,16'
          Dst:             njs_fs_result
    - functionName:    readlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_read_file
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1798
      functionLinenumberEnd: 1911
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          428
      EdgeCount:       87
      CyclomaticComplexity: 25
      functionsReached:
        - __errno_location
        - close
        - fstat
        - njs_buffer_encoding
        - njs_buffer_set
        - njs_fs_error
        - njs_fs_fd_read
        - njs_fs_flags
        - njs_fs_path
        - njs_fs_result
        - njs_mp_free
        - njs_value_is_function
        - njs_value_is_object
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_memory_pool
        - njs_vm_object_prop
        - open
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1809,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:1820,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:1821,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1830,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:1831,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:1833,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:1836,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:1837,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:1838,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1843,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:1845,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:1848,13'
          Dst:             njs_fs_flags
        - Src:             'external/njs_fs_module.c:1854,10'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:1855,20'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_fs_module.c:1861,10'
          Dst:             open
        - Src:             'external/njs_fs_module.c:1863,49'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1863,40'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1863,63'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1863,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1867,11'
          Dst:             fstat
        - Src:             'external/njs_fs_module.c:1869,49'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1869,40'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1869,63'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1869,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1874,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1881,11'
          Dst:             njs_fs_fd_read
        - Src:             'external/njs_fs_module.c:1884,53'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1884,44'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1884,67'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1884,19'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1892,15'
          Dst:             njs_buffer_set
        - Src:             'external/njs_fs_module.c:1897,21'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:1897,9'
          Dst:             njs_mp_free
        - Src:             'external/njs_fs_module.c:1903,16'
          Dst:             close
        - Src:             'external/njs_fs_module.c:1907,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_readdir
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1917
      functionLinenumberEnd: 2061
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          552
      EdgeCount:       120
      CyclomaticComplexity: 34
      functionsReached:
        - __errno_location
        - closedir
        - memcmp
        - njs_buffer_encoding
        - njs_buffer_set
        - njs_fs_dirent_create
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_value_bool
        - njs_value_boolean_set
        - njs_value_is_function
        - njs_value_is_object
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_number_set
        - njs_value_string_get
        - njs_value_undefined_set
        - njs_vm_array_alloc
        - njs_vm_array_push
        - njs_vm_error2
        - njs_vm_object_prop
        - opendir
        - readdir
        - strerror
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1930,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:1940,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:1941,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1949,5'
          Dst:             njs_value_boolean_set
        - Src:             'external/njs_fs_module.c:1950,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:1952,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:1955,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:1956,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:1957,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1962,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:1964,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:1970,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:1971,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_fs_module.c:1978,10'
          Dst:             memcmp
        - Src:             'external/njs_fs_module.c:1979,20'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_fs_module.c:1985,11'
          Dst:             njs_vm_array_alloc
        - Src:             'external/njs_fs_module.c:1990,11'
          Dst:             opendir
        - Src:             'external/njs_fs_module.c:1992,52'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1992,43'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1992,66'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1992,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2000,9'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2001,17'
          Dst:             readdir
        - Src:             'external/njs_fs_module.c:2003,17'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2004,60'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2004,51'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2004,74'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2004,23'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2012,20'
          Dst:             strlen
        - Src:             'external/njs_fs_module.c:2020,17'
          Dst:             njs_vm_array_push
        - Src:             'external/njs_fs_module.c:2026,19'
          Dst:             njs_buffer_set
        - Src:             'external/njs_fs_module.c:2036,13'
          Dst:             njs_value_bool
        - Src:             'external/njs_fs_module.c:2041,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_fs_module.c:2043,15'
          Dst:             njs_fs_dirent_create
        - Src:             'external/njs_fs_module.c:2053,16'
          Dst:             closedir
        - Src:             'external/njs_fs_module.c:2057,16'
          Dst:             njs_fs_result
    - functionName:    opendir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_dirent_create
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3469
      functionLinenumberEnd: 3489
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          69
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - njs_vm_external_create
        - njs_vm_object_prop_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3475,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_fs_module.c:3480,11'
          Dst:             njs_vm_object_prop_set
        - Src:             'external/njs_fs_module.c:3487,12'
          Dst:             njs_vm_object_prop_set
    - functionName:    njs_fs_open
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1531
      functionLinenumberEnd: 1591
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          247
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - close
        - njs_fs_error
        - njs_fs_filehandle_create
        - njs_fs_flags
        - njs_fs_mode
        - njs_fs_path
        - njs_fs_result
        - njs_value_is_function
        - njs_value_number_set
        - open
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1540,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:1546,9'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:1550,13'
          Dst:             njs_fs_flags
        - Src:             'external/njs_fs_module.c:1556,9'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:1560,10'
          Dst:             njs_fs_mode
        - Src:             'external/njs_fs_module.c:1565,10'
          Dst:             open
        - Src:             'external/njs_fs_module.c:1567,49'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1567,40'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1567,63'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1567,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1571,11'
          Dst:             njs_fs_filehandle_create
        - Src:             'external/njs_fs_module.c:1577,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_fs_module.c:1583,16'
          Dst:             njs_fs_result
        - Src:             'external/njs_fs_module.c:1587,16'
          Dst:             close
    - functionName:    njs_fs_mkdir
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1628
      functionLinenumberEnd: 1687
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          252
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - njs_fs_make_path
        - njs_fs_mode
        - njs_fs_path
        - njs_fs_result
        - njs_value_bool
        - njs_value_boolean_set
        - njs_value_is_function
        - njs_value_is_number
        - njs_value_is_object
        - njs_value_is_undefined
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1636,21'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:1646,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:1647,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1656,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:1657,5'
          Dst:             njs_value_boolean_set
        - Src:             'external/njs_fs_module.c:1659,9'
          Dst:             njs_value_is_number
        - Src:             'external/njs_fs_module.c:1662,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:1663,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:1664,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1669,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:1671,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:1674,10'
          Dst:             njs_fs_mode
        - Src:             'external/njs_fs_module.c:1680,28'
          Dst:             njs_value_bool
        - Src:             'external/njs_fs_module.c:1679,11'
          Dst:             njs_fs_make_path
        - Src:             'external/njs_fs_module.c:1683,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_exists_sync
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1513
      functionLinenumberEnd: 1525
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - access
        - njs_fs_path
        - njs_value_boolean_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1517,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:1522,35'
          Dst:             access
        - Src:             'external/njs_fs_module.c:1522,5'
          Dst:             njs_value_boolean_set
    - functionName:    access
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_close
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1597
      functionLinenumberEnd: 1622
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          108
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - close
        - njs_fs_error
        - njs_fs_result
        - njs_value_to_integer
        - njs_value_undefined_set
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1605,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:1610,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:1612,11'
          Dst:             close
        - Src:             'external/njs_fs_module.c:1614,50'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1614,41'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1614,64'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1614,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1618,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_write_file
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2714
      functionLinenumberEnd: 2848
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          499
      EdgeCount:       100
      CyclomaticComplexity: 29
      functionsReached:
        - __errno_location
        - close
        - njs_buffer_decode_string
        - njs_buffer_encoding
        - njs_fs_error
        - njs_fs_flags
        - njs_fs_mode
        - njs_fs_path
        - njs_fs_result
        - njs_value_buffer_get
        - njs_value_is_buffer
        - njs_value_is_data_view
        - njs_value_is_function
        - njs_value_is_object
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_string_get
        - njs_value_to_string
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
        - open
        - strerror
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2728,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2739,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2740,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2749,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2750,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2751,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2753,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:2756,17'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:2757,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:2758,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2763,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2765,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2767,16'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2772,9'
          Dst:             njs_value_is_buffer
        - Src:             'external/njs_fs_module.c:2772,38'
          Dst:             njs_value_is_data_view
        - Src:             'external/njs_fs_module.c:2773,15'
          Dst:             njs_value_buffer_get
        - Src:             'external/njs_fs_module.c:2779,20'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_fs_module.c:2784,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_fs_module.c:2789,15'
          Dst:             njs_buffer_decode_string
        - Src:             'external/njs_fs_module.c:2795,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_fs_module.c:2798,13'
          Dst:             njs_fs_flags
        - Src:             'external/njs_fs_module.c:2805,10'
          Dst:             njs_fs_mode
        - Src:             'external/njs_fs_module.c:2810,10'
          Dst:             open
        - Src:             'external/njs_fs_module.c:2812,49'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2812,40'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2812,63'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2812,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2820,13'
          Dst:             write
        - Src:             'external/njs_fs_module.c:2822,17'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2826,54'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2826,45'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2826,68'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2826,19'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2835,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2840,16'
          Dst:             close
        - Src:             'external/njs_fs_module.c:2844,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_access
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1456
      functionLinenumberEnd: 1507
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          239
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - access
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_value_is_function
        - njs_value_is_number
        - njs_value_is_undefined
        - njs_value_number
        - njs_value_undefined_set
        - njs_vm_error2
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1464,12'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:1474,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:1475,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1484,9'
          Dst:             njs_value_is_number
        - Src:             'external/njs_fs_module.c:1485,14'
          Dst:             njs_value_number
        - Src:             'external/njs_fs_module.c:1487,16'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:1491,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1495,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:1497,11'
          Dst:             access
        - Src:             'external/njs_fs_module.c:1499,51'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1499,42'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1499,65'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1499,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1503,16'
          Dst:             njs_fs_result
    - functionName:    njs_fs_bytes_written_create
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3862
      functionLinenumberEnd: 3876
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3865,23'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:3865,10'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_fs_module.c:3867,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_fs_module.c:3874,12'
          Dst:             njs_vm_external_create
    - functionName:    njs_fs_to_stat
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3538
      functionLinenumberEnd: 3591
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          135
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_stats_create
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3596
      functionLinenumberEnd: 3609
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_fs_to_stat
        - njs_mp_alloc
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3599,25'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:3599,12'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_fs_module.c:3601,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_fs_module.c:3605,5'
          Dst:             njs_fs_to_stat
        - Src:             'external/njs_fs_module.c:3607,12'
          Dst:             njs_vm_external_create
    - functionName:    njs_fs_bytes_read_create
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3842
      functionLinenumberEnd: 3856
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_mp_alloc
        - njs_vm_external_create
        - njs_vm_memory_error
        - njs_vm_memory_pool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3845,23'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_fs_module.c:3845,10'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_fs_module.c:3847,9'
          Dst:             njs_vm_memory_error
        - Src:             'external/njs_fs_module.c:3854,12'
          Dst:             njs_vm_external_create
    - functionName:    njs_fs_write
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2566
      functionLinenumberEnd: 2708
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         78
      ICount:          577
      EdgeCount:       107
      CyclomaticComplexity: 31
      functionsReached:
        - __errno_location
        - njs_buffer_decode_string
        - njs_buffer_encoding
        - njs_fs_bytes_written_create
        - njs_fs_error
        - njs_fs_result
        - njs_value_is_null_or_undefined
        - njs_value_is_string
        - njs_value_is_undefined
        - njs_value_number_set
        - njs_value_string_get
        - njs_value_to_integer
        - njs_vm_error2
        - njs_vm_value_to_bytes
        - pwrite
        - strerror
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:2578,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:2593,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_fs_module.c:2596,14'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'external/njs_fs_module.c:2597,19'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:2603,20'
          Dst:             njs_buffer_encoding
        - Src:             'external/njs_fs_module.c:2609,15'
          Dst:             njs_buffer_decode_string
        - Src:             'external/njs_fs_module.c:2615,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_fs_module.c:2625,11'
          Dst:             njs_vm_value_to_bytes
        - Src:             'external/njs_fs_module.c:2630,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:2637,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2647,10'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:2648,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:2654,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2664,10'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'external/njs_fs_module.c:2665,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:2674,13'
          Dst:             write
        - Src:             'external/njs_fs_module.c:2677,13'
          Dst:             pwrite
        - Src:             'external/njs_fs_module.c:2681,50'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2681,41'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2681,64'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2681,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2686,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2692,15'
          Dst:             njs_fs_bytes_written_create
        - Src:             'external/njs_fs_module.c:2698,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_fs_module.c:2704,16'
          Dst:             njs_fs_result
    - functionName:    pwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_filehandle_value_of
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3783
      functionLinenumberEnd: 3795
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - njs_value_number_set
        - njs_vm_error2
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3786,10'
          Dst:             njs_vm_external
        - Src:             'external/njs_fs_module.c:3788,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3792,5'
          Dst:             njs_value_number_set
    - functionName:    njs_fs_stat
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2350
      functionLinenumberEnd: 2461
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         71
      ICount:          439
      EdgeCount:       93
      CyclomaticComplexity: 24
      functionsReached:
        - __errno_location
        - fstat
        - lstat
        - njs_fs_error
        - njs_fs_path
        - njs_fs_result
        - njs_fs_stats_create
        - njs_value_bool
        - njs_value_is_function
        - njs_value_is_object
        - njs_value_is_undefined
        - njs_value_to_integer
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_object_prop
        - stat
        - strerror
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_fs_module.c:2425,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_fs_module.c:2370,16'
          Dst:             njs_fs_path
        - Src:             'external/njs_fs_module.c:2379,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:2391,14'
          Dst:             njs_value_is_function
        - Src:             'external/njs_fs_module.c:2392,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2403,10'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:2404,14'
          Dst:             njs_value_is_object
        - Src:             'external/njs_fs_module.c:2405,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2410,17'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2411,30'
          Dst:             njs_value_bool
        - Src:             'external/njs_fs_module.c:2412,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:2417,21'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:2420,25'
          Dst:             njs_value_bool
        - Src:             'external/njs_fs_module.c:2427,15'
          Dst:             stat
        - Src:             'external/njs_fs_module.c:2431,15'
          Dst:             lstat
        - Src:             'external/njs_fs_module.c:2436,15'
          Dst:             fstat
        - Src:             'external/njs_fs_module.c:2441,13'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2444,41'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2444,32'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:2444,55'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:2442,19'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:2449,13'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:2452,16'
          Dst:             njs_fs_result
        - Src:             'external/njs_fs_module.c:2455,11'
          Dst:             njs_fs_stats_create
        - Src:             'external/njs_fs_module.c:2460,12'
          Dst:             njs_fs_result
    - functionName:    njs_fs_read
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1693
      functionLinenumberEnd: 1792
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          439
      EdgeCount:       79
      CyclomaticComplexity: 23
      functionsReached:
        - __errno_location
        - njs_fs_bytes_read_create
        - njs_fs_error
        - njs_fs_result
        - njs_value_buffer_get
        - njs_value_is_null_or_undefined
        - njs_value_is_undefined
        - njs_value_number_set
        - njs_value_to_integer
        - njs_vm_error2
        - pread
        - read
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:1704,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:1717,11'
          Dst:             njs_value_buffer_get
        - Src:             'external/njs_fs_module.c:1722,11'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:1729,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1739,10'
          Dst:             njs_value_is_undefined
        - Src:             'external/njs_fs_module.c:1740,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:1746,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:1756,10'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'external/njs_fs_module.c:1757,15'
          Dst:             njs_value_to_integer
        - Src:             'external/njs_fs_module.c:1764,13'
          Dst:             read
        - Src:             'external/njs_fs_module.c:1767,13'
          Dst:             pread
        - Src:             'external/njs_fs_module.c:1771,49'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1771,40'
          Dst:             strerror
        - Src:             'external/njs_fs_module.c:1771,63'
          Dst:             __errno_location
        - Src:             'external/njs_fs_module.c:1771,15'
          Dst:             njs_fs_error
        - Src:             'external/njs_fs_module.c:1776,15'
          Dst:             njs_fs_bytes_read_create
        - Src:             'external/njs_fs_module.c:1782,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_fs_module.c:1788,16'
          Dst:             njs_fs_result
    - functionName:    pread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_fs_filehandle_close
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3756
      functionLinenumberEnd: 3777
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          78
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - close
        - njs_fs_result
        - njs_value_undefined_set
        - njs_vm_error2
        - njs_vm_external
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3760,10'
          Dst:             njs_vm_external
        - Src:             'external/njs_fs_module.c:3762,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3767,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3771,12'
          Dst:             close
        - Src:             'external/njs_fs_module.c:3774,5'
          Dst:             njs_value_undefined_set
        - Src:             'external/njs_fs_module.c:3776,12'
          Dst:             njs_fs_result
    - functionName:    njs_fs_dirent_test
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3509
      functionLinenumberEnd: 3533
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - njs_value_boolean_set
        - njs_value_is_number
        - njs_value_number
        - njs_vm_error2
        - njs_vm_object_prop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3515,12'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_fs_module.c:3520,9'
          Dst:             njs_value_is_number
        - Src:             'external/njs_fs_module.c:3520,9'
          Dst:             njs_value_number
        - Src:             'external/njs_fs_module.c:3523,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3529,27'
          Dst:             njs_value_is_number
        - Src:             'external/njs_fs_module.c:3530,42'
          Dst:             njs_value_number
        - Src:             'external/njs_fs_module.c:3528,5'
          Dst:             njs_value_boolean_set
    - functionName:    njs_fs_dirent_constructor
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3495
      functionLinenumberEnd: 3503
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_fs_dirent_create
        - njs_vm_constructor
        - njs_vm_error2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3496,9'
          Dst:             njs_vm_constructor
        - Src:             'external/njs_fs_module.c:3497,9'
          Dst:             njs_vm_error2
        - Src:             'external/njs_fs_module.c:3501,12'
          Dst:             njs_fs_dirent_create
    - functionName:    njs_fs_stats_test
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3615
      functionLinenumberEnd: 3657
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 2
      functionsReached:
        - njs_value_boolean_set
        - njs_vm_external
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_fs_module.c:3624,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_fs_module.c:3619,10'
          Dst:             njs_vm_external
        - Src:             'external/njs_fs_module.c:3654,5'
          Dst:             njs_value_boolean_set
    - functionName:    njs_fs_stats_prop
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3663
      functionLinenumberEnd: 3750
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          259
      EdgeCount:       30
      CyclomaticComplexity: 2
      functionsReached:
        - njs_value_number_set
        - njs_vm_date_alloc
        - njs_vm_external
        - njs_vm_prop_magic32
      functionUses:    0
      BranchProfiles:
        - Branch String:   'external/njs_fs_module.c:3675,5'
          Branch Sides:    []
        - Branch String:   'external/njs_fs_module.c:3734,5'
          Branch Sides:    []
      Callsites:
        - Src:             'external/njs_fs_module.c:3670,10'
          Dst:             njs_vm_external
        - Src:             'external/njs_fs_module.c:3675,13'
          Dst:             njs_vm_prop_magic32
        - Src:             'external/njs_fs_module.c:3734,13'
          Dst:             njs_vm_prop_magic32
        - Src:             'external/njs_fs_module.c:3736,9'
          Dst:             njs_value_number_set
        - Src:             'external/njs_fs_module.c:3741,15'
          Dst:             njs_vm_date_alloc
    - functionName:    njs_fs_init
      functionSourceFile: '/src/njs/external/njs_fs_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3891
      functionLinenumberEnd: 3950
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          169
      EdgeCount:       31
      CyclomaticComplexity: 11
      functionsReached:
        - njs_vm_add_module
        - njs_vm_external_create
        - njs_vm_external_prototype
        - njs_vm_options
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_fs_module.c:3896,9'
          Dst:             njs_vm_options
        - Src:             'external/njs_fs_module.c:3900,29'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_fs_module.c:3906,30'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_fs_module.c:3912,34'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_fs_module.c:3919,34'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_fs_module.c:3926,37'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_fs_module.c:3933,16'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_fs_module.c:3939,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_fs_module.c:3944,14'
          Dst:             njs_vm_add_module
    - functionName:    njs_query_string_escape
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          359
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_reserve
        - njs_mp_alloc
        - njs_mp_free
        - njs_value_is_string
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_memory_pool
        - njs_vm_value_string_create_chb
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:833,10'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:834,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:842,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:844,5'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_query_string_module.c:844,5'
          Dst:             njs_chb_init
        - Src:             'external/njs_query_string_module.c:844,5'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_query_string_module.c:844,5'
          Dst:             njs_mp_free
        - Src:             'external/njs_query_string_module.c:846,11'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_query_string_module.c:851,11'
          Dst:             njs_vm_value_string_create_chb
        - Src:             'external/njs_query_string_module.c:853,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_query_string_stringify
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         271
      ICount:          2359
      EdgeCount:       373
      CyclomaticComplexity: 104
      functionsReached:
        - njs_atom_atomize_key
        - njs_chb_append0
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_reserve
        - njs_mp_alloc
        - njs_mp_free
        - njs_value_function
        - njs_value_function_set
        - njs_value_is_array
        - njs_value_is_boolean
        - njs_value_is_function
        - njs_value_is_null_or_undefined
        - njs_value_is_object
        - njs_value_is_string
        - njs_value_is_valid_number
        - njs_value_native_function
        - njs_value_number_set
        - njs_value_property
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_array_length
        - njs_vm_array_start
        - njs_vm_error2
        - njs_vm_invoke
        - njs_vm_memory_pool
        - njs_vm_object_keys
        - njs_vm_object_prop
        - njs_vm_value_string_create
        - njs_vm_value_string_create_chb
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:696,9'
          Dst:             njs_value_is_object
        - Src:             'external/njs_query_string_module.c:697,9'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_query_string_module.c:702,10'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'external/njs_query_string_module.c:703,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:708,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:709,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:714,10'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'external/njs_query_string_module.c:715,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:720,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:721,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:727,9'
          Dst:             njs_value_is_object
        - Src:             'external/njs_query_string_module.c:728,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_query_string_module.c:731,17'
          Dst:             njs_value_is_function
        - Src:             'external/njs_query_string_module.c:732,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_query_string_module.c:737,22'
          Dst:             njs_value_function
        - Src:             'external/njs_query_string_module.c:742,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_query_string_module.c:744,29'
          Dst:             njs_value_is_function
        - Src:             'external/njs_query_string_module.c:745,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_query_string_module.c:749,18'
          Dst:             njs_value_function
        - Src:             'external/njs_query_string_module.c:752,5'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_query_string_module.c:752,5'
          Dst:             njs_chb_init
        - Src:             'external/njs_query_string_module.c:752,5'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_query_string_module.c:752,5'
          Dst:             njs_mp_free
        - Src:             'external/njs_query_string_module.c:754,12'
          Dst:             njs_vm_object_keys
        - Src:             'external/njs_query_string_module.c:759,12'
          Dst:             njs_vm_array_length
        - Src:             'external/njs_query_string_module.c:761,37'
          Dst:             njs_vm_array_start
        - Src:             'external/njs_query_string_module.c:767,15'
          Dst:             njs_atom_atomize_key
        - Src:             'external/njs_query_string_module.c:767,15'
          Dst:             njs_value_property
        - Src:             'external/njs_query_string_module.c:773,13'
          Dst:             njs_value_is_array
        - Src:             'external/njs_query_string_module.c:774,20'
          Dst:             njs_vm_array_length
        - Src:             'external/njs_query_string_module.c:777,17'
          Dst:             njs_value_number_set
        - Src:             'external/njs_query_string_module.c:778,23'
          Dst:             njs_atom_atomize_key
        - Src:             'external/njs_query_string_module.c:778,23'
          Dst:             njs_value_property
        - Src:             'external/njs_query_string_module.c:786,21'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_function_set
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_native_function
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:618,16'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_vm_invoke
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:636,5'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:789,23'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:789,23'
          Dst:             njs_value_is_valid_number
        - Src:             'external/njs_query_string_module.c:789,23'
          Dst:             njs_value_is_boolean
        - Src:             'external/njs_query_string_module.c:789,23'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:789,23'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:789,23'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_function_set
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_native_function
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:618,16'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_vm_invoke
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:636,5'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:801,13'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_function_set
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_native_function
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:618,16'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_vm_invoke
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:648,11'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:636,5'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:804,15'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:804,15'
          Dst:             njs_value_is_valid_number
        - Src:             'external/njs_query_string_module.c:804,15'
          Dst:             njs_value_is_boolean
        - Src:             'external/njs_query_string_module.c:804,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:804,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:804,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_function_set
        - Src:             'external/njs_query_string_module.c:616,9'
          Dst:             njs_value_native_function
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:618,16'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_vm_invoke
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:666,15'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:636,5'
          Dst:             njs_chb_append0
        - Src:             'external/njs_query_string_module.c:811,11'
          Dst:             njs_vm_value_string_create_chb
        - Src:             'external/njs_query_string_module.c:815,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_query_string_parse
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          371
      EdgeCount:       79
      CyclomaticComplexity: 22
      functionsReached:
        - njs_query_string_parser
        - njs_value_function
        - njs_value_is_function
        - njs_value_is_null_or_undefined
        - njs_value_is_object
        - njs_value_is_string
        - njs_value_is_valid_number
        - njs_value_number
        - njs_value_string_get
        - njs_value_to_string
        - njs_vm_error2
        - njs_vm_object_prop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:385,9'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:386,9'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:396,10'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'external/njs_query_string_module.c:397,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:402,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:403,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:408,10'
          Dst:             njs_value_is_null_or_undefined
        - Src:             'external/njs_query_string_module.c:409,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:414,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:415,13'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:421,9'
          Dst:             njs_value_is_object
        - Src:             'external/njs_query_string_module.c:422,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_query_string_module.c:425,18'
          Dst:             njs_value_is_valid_number
        - Src:             'external/njs_query_string_module.c:426,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_query_string_module.c:430,24'
          Dst:             njs_value_number
        - Src:             'external/njs_query_string_module.c:437,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_query_string_module.c:440,17'
          Dst:             njs_value_is_function
        - Src:             'external/njs_query_string_module.c:441,17'
          Dst:             njs_vm_error2
        - Src:             'external/njs_query_string_module.c:446,22'
          Dst:             njs_value_function
        - Src:             'external/njs_query_string_module.c:451,15'
          Dst:             njs_vm_object_prop
        - Src:             'external/njs_query_string_module.c:453,29'
          Dst:             njs_value_is_function
        - Src:             'external/njs_query_string_module.c:454,13'
          Dst:             njs_vm_error2
        - Src:             'external/njs_query_string_module.c:458,18'
          Dst:             njs_value_function
        - Src:             'external/njs_query_string_module.c:461,12'
          Dst:             njs_query_string_parser
    - functionName:    njs_query_string_parser
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         80
      ICount:          568
      EdgeCount:       110
      CyclomaticComplexity: 32
      functionsReached:
        - njs_atom_atomize_key
        - njs_query_string_decode
        - njs_query_string_match
        - njs_value_function_set
        - njs_value_is_array
        - njs_value_is_string
        - njs_value_native_function
        - njs_value_property
        - njs_value_property_set
        - njs_value_to_string
        - njs_vm_array_alloc
        - njs_vm_array_push
        - njs_vm_invoke
        - njs_vm_object_alloc
        - njs_vm_value_string_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:485,11'
          Dst:             njs_vm_object_alloc
        - Src:             'external/njs_query_string_module.c:499,16'
          Dst:             njs_query_string_match
        - Src:             'external/njs_query_string_module.c:505,15'
          Dst:             njs_query_string_match
        - Src:             'external/njs_query_string_module.c:239,9'
          Dst:             njs_value_function_set
        - Src:             'external/njs_query_string_module.c:239,9'
          Dst:             njs_value_native_function
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_query_string_decode
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_query_string_decode
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_invoke
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_value_string_create
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_invoke
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:297,11'
          Dst:             njs_atom_atomize_key
        - Src:             'external/njs_query_string_module.c:297,11'
          Dst:             njs_value_property
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_value_is_array
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_array_push
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_array_alloc
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_array_push
        - Src:             'external/njs_query_string_module.c:513,15'
          Dst:             njs_vm_array_push
        - Src:             'external/njs_query_string_module.c:334,12'
          Dst:             njs_atom_atomize_key
        - Src:             'external/njs_query_string_module.c:334,12'
          Dst:             njs_value_property_set
    - functionName:    njs_query_string_match
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          129
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:357,13'
          Dst:             memcmp
    - functionName:    njs_query_string_unescape
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - njs_query_string_decode
        - njs_value_is_string
        - njs_value_string_get
        - njs_value_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:870,10'
          Dst:             njs_value_is_string
        - Src:             'external/njs_query_string_module.c:871,15'
          Dst:             njs_value_to_string
        - Src:             'external/njs_query_string_module.c:879,5'
          Dst:             njs_value_string_get
        - Src:             'external/njs_query_string_module.c:881,12'
          Dst:             njs_query_string_decode
    - functionName:    njs_query_string_decode
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          284
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - njs_chb_destroy
        - njs_chb_init
        - njs_chb_reserve
        - njs_mp_alloc
        - njs_mp_free
        - njs_utf8_decode
        - njs_utf8_encode
        - njs_vm_memory_pool
        - njs_vm_value_string_create_chb
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:155,5'
          Dst:             njs_vm_memory_pool
        - Src:             'external/njs_query_string_module.c:155,5'
          Dst:             njs_chb_init
        - Src:             'external/njs_query_string_module.c:155,5'
          Dst:             njs_mp_alloc
        - Src:             'external/njs_query_string_module.c:155,5'
          Dst:             njs_mp_free
        - Src:             'external/njs_query_string_module.c:165,18'
          Dst:             njs_utf8_decode
        - Src:             'external/njs_query_string_module.c:174,22'
          Dst:             njs_utf8_decode
        - Src:             'external/njs_query_string_module.c:186,15'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_query_string_module.c:191,33'
          Dst:             njs_utf8_encode
        - Src:             'external/njs_query_string_module.c:195,15'
          Dst:             njs_chb_reserve
        - Src:             'external/njs_query_string_module.c:201,25'
          Dst:             njs_utf8_encode
        - Src:             'external/njs_query_string_module.c:204,11'
          Dst:             njs_vm_value_string_create_chb
        - Src:             'external/njs_query_string_module.c:206,5'
          Dst:             njs_chb_destroy
    - functionName:    njs_vm_query_string_parse
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - njs_query_string_parser
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:470,12'
          Dst:             njs_query_string_parser
    - functionName:    njs_query_string_init
      functionSourceFile: '/src/njs/external/njs_query_string_module.c'
      linkageType:     InternalLinkage
      functionLinenumber: 887
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - njs_vm_add_module
        - njs_vm_external_create
        - njs_vm_external_prototype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'external/njs_query_string_module.c:892,16'
          Dst:             njs_vm_external_prototype
        - Src:             'external/njs_query_string_module.c:898,11'
          Dst:             njs_vm_external_create
        - Src:             'external/njs_query_string_module.c:903,14'
          Dst:             njs_vm_add_module
    - functionName:    njs_strncasecmp
      functionSourceFile: '/src/njs/src/njs_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          116
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_random
      functionSourceFile: '/src/njs/src/njs_random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          369
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - getpid
        - njs_random_stir
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_random.c:169,15'
          Dst:             getpid
        - Src:             'src/njs_random.c:179,9'
          Dst:             njs_random_stir
    - functionName:    njs_random_stir
      functionSourceFile: '/src/njs/src/njs_random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          195
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - close
        - getpid
        - getrandom
        - gettimeofday
        - njs_random_add
        - njs_random_init
        - open
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/njs_random.c:63,9'
          Dst:             njs_random_init
        - Src:             'src/njs_random.c:70,9'
          Dst:             getrandom
        - Src:             'src/njs_random.c:103,14'
          Dst:             open
        - Src:             'src/njs_random.c:106,17'
          Dst:             read
        - Src:             'src/njs_random.c:107,20'
          Dst:             close
        - Src:             'src/njs_random.c:112,16'
          Dst:             gettimeofday
        - Src:             'src/njs_random.c:118,25'
          Dst:             getpid
        - Src:             'src/njs_random.c:123,5'
          Dst:             njs_random_add
    - functionName:    njs_random_init
      functionSourceFile: '/src/njs/src/njs_random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          47
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getrandom
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    njs_random_add
      functionSourceFile: '/src/njs/src/njs_random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          97
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
...
